Java 你好';我正在尝试阅读android项目中的核心库android.jar,有可能吗。?
由于我是android的初学者,尝试从android.jar访问核心库的目的是访问jar文件中存在的android.view包的类,我尝试了一些代码,但它没有显示类,出现了一点错误..请检查错误日志Java 你好';我正在尝试阅读android项目中的核心库android.jar,有可能吗。?,java,android,Java,Android,由于我是android的初学者,尝试从android.jar访问核心库的目的是访问jar文件中存在的android.view包的类,我尝试了一些代码,但它没有显示类,出现了一点错误..请检查错误日志 public class TEST1 { public static void main() { String packname = "android.view"; String jarfile = "C:/Users/RAMA/Desktop/New folder/adt-bund
public class TEST1 {
public static void main() {
String packname = "android.view";
String jarfile = "C:/Users/RAMA/Desktop/New folder/adt-bundle-windows-x86_64-20130219/adt-bundle-windows-x86_64-20130219/sdk/platforms/android-17/android.jar";
JarFile jar = null;
try {
jar = new JarFile(jarfile);
} catch (FileNotFoundException ex) {
} catch (IOException e) {
e.printStackTrace();
}
java.util.Enumeration enumEntries = jar.entries();
while (enumEntries.hasMoreElements()) {
java.util.jar.JarEntry file = (java.util.jar.JarEntry) enumEntries
.nextElement();
String nm = file.getName();
nm = nm.replace('/', '.');
try {
if (nm.startsWith(packname)) {
int stIndx = packname.length();
String rem = nm.substring(stIndx + 1);
int idx1 = rem.lastIndexOf('.');
int idx2 = rem.lastIndexOf('.', idx1 - 1);
if (rem.endsWith(".class") && idx2 == -1
&& !rem.contains("$")) {
rem = rem.substring(0, rem.length() - 6);
String fName = packname + "." + rem;
ClassesDisplayActivity.your_array_list3.add(fName);
Log.i("Ramu","classname "+ fName.getClass().getName());
}
}
} catch (Exception e) {
}
}
}
}
错误日志
06-16 07:54:06.923:E/Trace(1700):打开跟踪文件时出错:没有这样的文件或目录(2)
06-16 17:09:51.925:E/Trace(1267):打开跟踪文件时出错:没有这样的文件或目录(2)
06-16 17:09:53.505:D/gralloc_金鱼(1267):未检测到GPU仿真的仿真器。
06-16 17:10:31.555:E/Trace(1319):打开跟踪文件时出错:没有这样的文件或目录(2)
06-16 17:10:33.155:D/gralloc_金鱼(1319):未检测到GPU仿真的仿真器。
6-16 17:10:40.924:D/dalvikvm(1319):释放69K的所有数据的GC_,8%的空闲2648K/2864K,暂停90ms,总计115ms
06-16 17:10:41.204:我/我在displayclass(1319):活动
06-16 17:10:41.326:W/System.err(1319):java.lang.NullPointerException
06-16 17:10:41.374:W/System.err(1319):位于com.api.testapp.TEST1.main(TEST1.java:18)
06-16 17:10:41.394:W/System.err(1319):位于com.api.testapp.ClassesDisplayActivity.onStart(ClassesDisplayActivity.java:76)
06-16 17:10:41.424:W/System.err(1319):在android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1164)
06-16 17:10:41.424:W/System.err(1319):在android.app.Activity.performStart(Activity.java:5114)上
06-16 17:10:41.444:W/System.err(1319):在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2153)
06-16 17:10:41.444:W/System.err(1319):位于android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230)
06-16 17:10:41.444:W/System.err(1319):在android.app.ActivityThread.access$600(ActivityThread.java:141)
06-16 17:10:41.464:W/System.err(1319):在android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
06-16 17:10:41.464:W/System.err(1319):位于android.os.Handler.dispatchMessage(Handler.java:99)
06-16 17:10:41.464:W/System.err(1319):位于android.os.Looper.loop(Looper.java:137)
06-16 17:10:41.464:W/System.err(1319):位于android.app.ActivityThread.main(ActivityThread.java:5041)
06-16 17:10:41.494:W/System.err(1319):位于java.lang.reflect.Method.invokenactive(本机方法)
06-16 17:10:41.494:W/System.err(1319):位于java.lang.reflect.Method.invoke(Method.java:511)
06-16 17:10:41.514:W/System.err(1319):在com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
06-16 17:10:41.514:W/System.err(1319):位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
06-16 17:10:41.534:W/System.err(1319):在dalvik.System.NativeStart.main(本机方法)
06-16 17:10:41.994:I/编舞(1319):跳过42帧!应用程序可能在其主线程上做了太多工作
任何人都知道,请解决这个问题。请先阅读Java和Android的基础知识。如果你想为Android编写代码,你就不能访问windows pc的本地文件目录。无论如何,java没有静态主入口点。如果您想为java编写代码,就不能使用androids库
您也不应该通过清空块来忽略异常。“发生了一点错误”-->这是什么错误?你必须更具体一点。06-16 07:54:06.923:E/Trace(1700):打开跟踪文件时出错:没有这样的文件或目录(2)把它放在你的问题中。你到底想做什么?我不明白这与Android有什么关系-该代码肯定不是标准的Android代码。@Squonk我正在尝试访问Android.view包中的类,它只是标准代码。