application中android:name的作用

AndroidManifest.xml 中 application 有一个属性是 android:name ,它是用来app启动时来关联一个application的,默认关联的是android.app.Application

当app启动时,会默认创建一个application的实例 ,当在Activity中调用getApplication()方法时 ,就会返回这个实例,所以这个 android:name 指定的类就有点似于全局变量的作用吧 , 用来存储数据供给整个 Activity 使用

下面测试一下android:name这个属性的作用:

新建一个MainApplicatio类继承Application ,添加一个成员变量,在onCreate方法中打印信息
application中android:name的作用

然后在AndroidManifest.xml 中 application 中添加 android:name=".MainApplication"

运行一下app会发现MainApplication这个类被创建了
application中android:name的作用

可以在 MainActivity 中 使用 getApplication 方法获取一下 application 并给它设置一个值并打印出来
application中android:name的作用
打印结果如下
application中android:name的作用

可以看到 , android:name 属性的作用就是设置一个类,当app运行前创建实例,并可以将类中的数据在运行期间给所有 Activity 来访问。

参考:https://blog.csdn.net/zeng622peng/article/details/78343443