Application 全局单例
时间: 2023-07-14 14:08:42 浏览: 89
Android中用Application类实现全局变量
在Android中,你可以使用`Application`类来创建一个全局的单例对象。`Application`类是应用程序的基,它在应用程序动时创建并在个应用程序生中存在。
要创建一个全局单例,首先创建一个承自`Application`类自定义应用程序。例如:
```k
class MyApp : Application() companion object {
private lateinit var instance: MyApp
fun getInstance(): MyApp {
return instance
}
}
override fun onCreate() {
super.onCreate()
instance = this
}
// 其他应用程序的全局属性和方法
}
```
在`MyApp`类中,我们使用了一个伴生对象`companion object`来存储单例对象。在`onCreate()`方法中,我们将当前的应用程序实例赋值给`instance`变量。
现在,在应用程序的任何地方,你都可以通过调用`MyApp.getInstance()`来获取全局的单例对象。
记得在AndroidManifest.xml文件中将你的自定义应用程序类指定为应用程序的`android:name`属性。例如:
```xml
<application
android:name=".MyApp"
<!-- 其他应用程序配置 -->
>
<!-- 其他组件配置 -->
</application>
```
这样就完成了在Android应用程序中创建全局单例对象的步骤。注意,全局单例对象在整个应用程序的生命周期内存在,因此请谨慎使用以避免内存泄漏和其他问题。
阅读全文