Android:java.lang.IllegalAccessException尝试使用自定义的“应用程序”类时

我想创build一个自定义的应用程序类定义如下:

  1. 创build一个名为MyApp的应用程序的空子类
  2. 在清单中,为我的应用程序指定android :: name: <application android:name=".MyApp" ...

但是,当我尝试运行我的应用程序,我得到: java.lang.RuntimeException: Unable to instantiate application com.test.MyApp java.lang.IllegalAccessException: access to class not allowed

确保你的自定义类是public ,有一个public零参数构造函数,并且构造函数链接到超类的构造函数。

我同意CommonsWare。 如果扩展android.app.Application来定义项目的自定义应用程序,请确保您已将该类标记为公共和公共非公开构造函数。

但是,在android.app.Application API上提到, 通常不需要子类Application。 在大多数情况下,静态单例可以以更模块化的方式提供相同的function。

希望这会有所帮助。

干杯。