本指南告诉您如何创建Application类:
http://www.intridea.com/blog/2011/5/24/how-to-use-application-object-of-android
它提到您需要在清单中定义Application类的名称:
<application android:icon="@drawable/icon" android:label="@string/app_name" android:name="MyApplication">
我认为Application类对于保存静态变量/对象非常有用,例如GoogleApiClient,这样您每次活动结束时都不必重新连接Google,而只要将它放在应用程序类中,您只需要在应用启动时连接一次,在关闭时断开连接。
我有一个multidex应用:https://developer.android.com/tools/building/multidex.html
Multidex应用程序要求我在清单中为应用程序提供"android.support.multidex.MultiDexApplication"
的常量名称:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.android.multidex.myapplication">
<application
...
android:name="android.support.multidex.MultiDexApplication">
...
</application>
</manifest>
如果我必须提供android:name="android.support.multidex.MultiDexApplication"
作为应用程序名称,我也不能同意android:name="MyApplication"
。据我所知,应用程序不能有两个名称。
是否可以在app中同时使用multidex和自定义应用程序类?
答案 0 :(得分:1)
我认为Application类对于保存静态变量/对象很有用
如果它们是static
,则Application
不会持有它们。
是否可以在app中同时使用multidex和自定义应用程序类?
根据the documentation,您可以让您的课程延长MultiDexApplication
或覆盖attachBaseContext()
,然后拨打MultiDex.install(this)
,而不是需要MultiDexApplication
。