Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/198.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android应用程序ClassNotFoundException,无法实例化应用程序_Android_Classnotfoundexception - Fatal编程技术网

Android应用程序ClassNotFoundException,无法实例化应用程序

Android应用程序ClassNotFoundException,无法实例化应用程序,android,classnotfoundexception,Android,Classnotfoundexception,此异常每周报告10次,我试图找到解决方案,但失败。我对这种例外感到有点沮丧,于是搜索了所有相关的帖子。(另外,我注意到全名(android:name=“com.example.AcraApplication”)抛出的异常比短名(android:name=“.AcraApplication”)抛出的异常要多。) 公共类AcraApplication扩展应用程序{ public void onCreate(){ ACRA.init(本); super.onCreate(); } 日志: java.

此异常每周报告10次,我试图找到解决方案,但失败。我对这种例外感到有点沮丧,于是搜索了所有相关的帖子。(另外,我注意到全名(android:name=“com.example.AcraApplication”)抛出的异常比短名(android:name=“.AcraApplication”)抛出的异常要多。)

公共类AcraApplication扩展应用程序{
public void onCreate(){
ACRA.init(本);
super.onCreate();
}
日志:

java.lang.RuntimeException: Unable to instantiate application com.example.AcraApplication: java.lang.ClassNotFoundException: Didn't find class "com.example.AcraApplication" on path: DexPathList[[zip file "/mnt/asec/com.example-2/pkg.apk"],nativeLibraryDirectories=[/vendor/lib, /system/lib]]
at android.app.LoadedApk.makeApplication(LoadedApk.java:516)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4554)
at android.app.ActivityThread.access$1600(ActivityThread.java:161)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1325)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:157)
at android.app.ActivityThread.main(ActivityThread.java:5356)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1265)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1081)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.example.AcraApplication" on path: DexPathList[[zip file "/mnt/asec/com.example-2/pkg.apk"],nativeLibraryDirectories=[/vendor/lib, /system/lib]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:67)
at java.lang.ClassLoader.loadClass(ClassLoader.java:497)
at java.lang.ClassLoader.loadClass(ClassLoader.java:457)
at android.app.Instrumentation.newApplication(Instrumentation.java:993)
at android.app.LoadedApk.makeApplication(LoadedApk.java:511)
... 11 more
Suppressed: java.io.IOException: unable to open DEX file
at dalvik.system.DexFile.openDexFileNative(Native Method)
at dalvik.system.DexFile.openDexFile(DexFile.java:296)
at dalvik.system.DexFile.<init>(DexFile.java:80)
at dalvik.system.DexFile.<init>(DexFile.java:59)
at dalvik.system.DexPathList.loadDexFile(DexPathList.java:263)
at dalvik.system.DexPathList.makeDexElements(DexPathList.java:230)
at dalvik.system.DexPathList.<init>(DexPathList.java:112)
at dalvik.system.BaseDexClassLoader.<init>(BaseDexClassLoader.java:58)
at dalvik.system.PathClassLoader.<init>(PathClassLoader.java:65)
at android.app.ApplicationLoaders.getClassLoader(ApplicationLoaders.java:57)
at android.app.LoadedApk.getClassLoader(LoadedApk.java:326)
at android.app.LoadedApk.makeApplication(LoadedApk.java:508)
... 11 more
java.lang.RuntimeException:无法实例化应用程序com.example.AcraApplication:java.lang.ClassNotFoundException:在路径:DexPathList[[zip文件”/mnt/asec/com.example-2/pkg.apk]、NativelLibraryDirectory=[/vendor/lib、/system/lib]上未找到类“com.example.AcraApplication”
在android.app.LoadedApk.makeApplication(LoadedApk.java:516)上
位于android.app.ActivityThread.handleBindApplication(ActivityThread.java:4554)
在android.app.ActivityThread.access$1600(ActivityThread.java:161)
在android.app.ActivityThread$H.handleMessage上(ActivityThread.java:1325)
位于android.os.Handler.dispatchMessage(Handler.java:102)
位于android.os.Looper.loop(Looper.java:157)
位于android.app.ActivityThread.main(ActivityThread.java:5356)
位于java.lang.reflect.Method.Invokenactive(本机方法)
位于java.lang.reflect.Method.invoke(Method.java:515)
在com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run上(ZygoteInit.java:1265)
位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1081)
在dalvik.system.NativeStart.main(本机方法)
原因:java.lang.ClassNotFoundException:在路径:DexPathList[[zip文件”/mnt/asec/com.example-2/pkg.apk“],NativeLibraryDirectory=[/vendor/lib,/system/lib]上未找到类“com.example.AcraApplication”
位于dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:67)
位于java.lang.ClassLoader.loadClass(ClassLoader.java:497)
位于java.lang.ClassLoader.loadClass(ClassLoader.java:457)
位于android.app.Instrumentation.newApplication(Instrumentation.java:993)
在android.app.LoadedApk.makeApplication(LoadedApk.java:511)上
…还有11个
抑制:java.io.IOException:无法打开DEX文件
位于dalvik.system.DexFile.openDexFileNative(本机方法)
位于dalvik.system.DexFile.openDexFile(DexFile.java:296)
位于dalvik.system.DexFile.(DexFile.java:80)
位于dalvik.system.DexFile.(DexFile.java:59)
位于dalvik.system.DexPathList.loadDexFile(DexPathList.java:263)
位于dalvik.system.DexPathList.makedexements(DexPathList.java:230)
位于dalvik.system.DexPathList。(DexPathList.java:112)
位于dalvik.system.BaseDexClassLoader。(BaseDexClassLoader.java:58)
在dalvik.system.PathClassLoader.(PathClassLoader.java:65)
在android.app.ApplicationLoaders.getClassLoader(ApplicationLoaders.java:57)上
在android.app.LoadedApk.getClassLoader上(LoadedApk.java:326)
在android.app.LoadedApk.makeApplication(LoadedApk.java:508)上
…还有11个

编辑:我注意到,当我在eclipse中使用ctrl+F11重新安装并打开时,没有单击其图标,这种情况会更频繁地发生。

您是否在类文件的顶部声明了包名

它应该在每个类文件的顶部声明一个包,如下所示:

package com.example;

import ...

public class AcraApplication extends Application {
    ...
}
包含该包声明的所有类文件应位于同一目录中,
src/com/example

您还必须在
AndroidManifest.xml
文件中声明您的包以及所有子类


我也有同样的错误。 通过在清单文件中添加以下权限解决了此问题

uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"

希望这有帮助。:

这可能是由于初始化类时出现异常造成的。可能是由于某种静态变量导致该类无法创建。请尝试清理项目并重新构建它。如果在应用程序启动时加载任何数据,请确保始终加载或延迟加载该数据。看起来系统在打开应用程序dex文件
java.io.IOException:无法打开dex文件
,这是在加载任何类之前,因此它与在清单中定义应用程序类的方式无关。@razzaps,缓慢加载,我会尝试一下。谢谢。
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example"
    ... >

    <application
        ... >
        <activity
            android:name=".AcraApplication"
            ... >
        </activity>
    </application>
</manifest>
uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"