我想知道在我的Android应用中分享单身的最佳方法是什么。 我有一些不相互依赖的活动,但我希望他们有一个他们可以读/写的单身。
我应该把它放在哪里?
由于
答案 0 :(得分:8)
您的申请应该是单身人士。它避免了与共享数据或模型相关的许多其他问题。
在manifest.xml中:
<application android:icon="@drawable/icon"
android:label="@string/app_name" android:debuggable="false"
android:name="<class of your application see below>"
android:launchMode="singleTop">
..... all activities/services/receivers/etc... as usual
</application>
你的android:name引用了这个类:
public class MyApp extends Application {
//singleton, but use onCreate more than constructor to build shared resources.
....
}//class
然后,在任何活动中,您可以通过执行以下操作来检索您的单身人士以获取共享资源:
((MyApp)getApplicationContext()).getSharedResources()....
或
MyApp.getInstance().getSharedResources()....
将单例作为应用程序是android中常用的设计模式,它对于处理设备轮换特别有用(因为它往往会破坏活动并重新创建它们),因为它提供了一个稳定的实体,可以在应用程序生命周期中持久存在。