多个类扩展应用程序

Dhe*_*kar 11 java android

两个类扩展了Application

  • 我在Manifest中注册了一个课程并且正在使用Application
  • 第二类是我的实用工具类.它执行大量I/O并具有一些辅助方法.对于I/O,您需要上下文(getAssets等),因此我不情愿地扩展了Application.

注意:

一切都在发挥作用.

我的问题:

使用多个Application类有什么缺点吗?这甚至被建议了吗?

一些想法:

  • 就像我在两个类中定义onCreate和其他回调方法会发生什么?
  • 如何在清单中注册它们?等等

PS:我知道我可以使用一个字段来存储第二类中的上下文.

Ora*_*bîg 8

我认为这根本不建议,因为Application上只能有一个实例(因此只有一个类).

我对真正有效的事情非常怀疑.你在谈论实用程序类,所以也许你正在使用运行良好的静态方法.但是你应该使用你的调试器,我几乎可以肯定你会发现你的某个类从未被实例化过.

顺便说一下,官方文件说明:

"通常不需要子类Application.在大多数情况下,静态单例可以以更模块化的方式提供相同的功能.如果你的单例需要一个全局上下文(例如注册广播接收器),检索它的函数可以是给出一个Context,它在第一次构造单例时在内部使用Context.getApplicationContext()."