安卓:无法实例化应用程序

2022-09-02 00:41:03

我重命名了我的包,现在我得到这个奇怪的错误:

Unable to instantiate application
app.MyApplication: java.lang.ClassNotFoundException: 
app.MyApplication in loaderdalvik.system.PathClassLoader

该类位于 中。宣言说:MyApplicationApplication/app

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:tools="http://schemas.android.com/tools"
  package="Application">
<application 
    android:label="AGG"
    android:name="app.MyApplication"...

我尝试重新启动,干净构建。Is 在模拟器和真实设备上都不起作用。

到底发生了什么?


答案 1

让我们假设,您的项目基本包确实是 ,正如您在 .Applicationmanifest

如果你的类在这个包里面(类的包声明是 ),那么你的元素应该看起来像MyApplicationpackage Application;applicationandroidManifest.xml

<application android:name=".MyApplication" [...]

如果此类位于包 () 中,则应在清单中写入:MyApplicationApplication.apppackage Application.app;

<application android:name=".app.MyApplication" [...]

如果您没有扩展(您没有类),只是想为应用程序设置一个名称,请删除此属性,因为它向编译器说有一个扩展应该实例化而不是默认的。android.app.ApplicationMyApplication extends android.app.ApplicationApplicationandroid.app.Application

最后,如果第一个假设是错误的,并且您出于任何原因更改了androidManifest元素中的包声明,请撤消它或更新您的类以包含在该包中。manifest


答案 2

对我来说,问题出在即时运行上。禁用它解决了问题。

如果我找到重新启用并使其工作的解决方案,将进行更新。


推荐