【问题标题】:java.lang.RuntimeException: Unable to instantiate application, java.lang.ClassNotFoundException:java.lang.RuntimeException:无法实例化应用程序,java.lang.ClassNotFoundException:
【发布时间】:2025-12-30 05:45:16
【问题描述】:

我已经要求找出这个问题的解决方案,但我无法为我得到好的答案。 所以我试着写一个更详细的问题。

某些用户有时会出现以下错误。 我还没有通过我用于测试的几款安卓手机看到它,但我大约每周一次通过谷歌开发者控制台得到这个迷恋:(

我已经尝试了很长时间来解决这个问题。 有人说这可能是由于外部 SD 卡的东西,或者 Singletone 的东西。

此外,在上一个问题中,一位感谢的人说我应该检查 AndroidManifest.xml 中 Applcation 标签的 'name' 属性。 但是我已经把包名放在上面了,所以我认为这不是暗恋的原因。

我一直在测试将我的应用安装到外部 SD 卡然后卸载的外部 SD 卡。 但我无法重现。

关于 Singletone 的东西,我的应用程序不会在任何地方使用自定义应用程序类的实例。 所以我认为 Singletone 的东西不可能是这个问题的原因。

即使我不知道如何重新制作暗恋,所以我真的需要一份文件或关于它的公开资料。

我确定有人遇到此错误并且已经知道如何解决。 因此,请帮助我知道出了什么问题以及如何解决它。 祝你有美好的一天,谢谢。

错误:

    java.lang.RuntimeException: Unable to instantiate
    application com.***.***.MyApplication:
    java.lang.ClassNotFoundException: com.***.***.MyApplication at
    android.app.LoadedApk.makeApplication(LoadedApk.java:501) at
    android.app.ActivityThread.handleBindApplication(ActivityThread.java:4253)
    at android.app.ActivityThread.access$1400(ActivityThread.java:143)
    at
    android.app.ActivityThread$H.handleMessage(ActivityThread.java:1301)
    at android.os.Handler.dispatchMessage(Handler.java:99) at
    android.os.Looper.loop(Looper.java:137) at
    android.app.ActivityThread.main(ActivityThread.java:4950) at
    java.lang.reflect.Method.invokeNative(Native Method) at
    java.lang.reflect.Method.invoke(Method.java:511) at
    com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:997)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:764) at
    dalvik.system.NativeStart.main(Native Method) Caused by:
    java.lang.ClassNotFoundException: com.***.***.MyApplication at
    dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:61)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:501) at
    java.lang.ClassLoader.loadClass(ClassLoader.java:461) at
    android.app.Instrumentation.newApplication(Instrumentation.java:982)
    at android.app.LoadedApk.makeApplication(LoadedApk.java:496) ... 11
    more

MyApplication.java:

public class MyApplication extends Application {
    @Override
    public void onCreate() {
        super.onCreate();
            ...
    }

    @Override
    public void onTerminate() {
        super.onTerminate();
    }

    ...

}

AndroidManifest.xml:

...
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
...
<application
        android:name="com.***.***.MyApplication"
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >

【问题讨论】:

  • 为什么要“扩展应用程序”?尝试“扩展活动”
  • @Fraggles 我使用“扩展应用程序”的原因是为了启动全局的东西。这不是一个活动类
  • 您是否使用任何外部 jar 文件?
  • @Siddharth 是的,我是。我正在使用许多库,如 volley.jar、external-gson 等。
  • @SYKwon :检查我的答案。

标签: java android exception


【解决方案1】:

Google Play 商店升级过程中的已知错误,https://code.google.com/p/android/issues/detail?id=56296

【讨论】:

    【解决方案2】:

    这是由于您无法控制的设备上的问题引起的。即使我在开发控制台中也得到了类似的报告,但经过广泛的研究,我得出的结论是,您根本无法通过使用任何常规方法从您身边防止这种崩溃,因为它不是由您的应用程序中的任何故障引起的,而是由用户系统的故障引起的。您无法控制用户的系统,并且由于系统的意外行为而导致的许多崩溃无法“修复”,而不是应用开发者。

    【讨论】:

    • 如何向客户解释? :P
    【解决方案3】:

    似乎您的二进制类在类路径中不可用。请检查应用程序的二进制类路径并检查该路径的可用性。

    【讨论】:

    • 我正在使用 eclipse 工具,所以我实际上并不关心它。所以如果你不介意,你能告诉我如何检查你的意思吗?
    最近更新 更多