我有一个简单的Android应用程序,需要保存一个身份验证会话对象,以便在应用程序运行时与REST API进行通信。
我的印象是将此会话对象作为我的Android Application
类的一部分作为静态对象提供,并在此上下文中初始化会话:
[Application]
public class MyApp : Application
{
static public Session session;
public MyApp(IntPtr handle, JniHandleOwnership transfer) : base(handle,transfer)
{
// database is initialised here
MyApp.session = new Session (database);
}
}
这似乎很有效,直到我发现当我MyApp.session
MainActivity
MyApp.session
null
设置为MainActivity
时我才发现{。}}。
我现在正在使用OnCreate
类Application
方法初始化会话,现在会话似乎保持了它的价值。
是否有MyApp
类和静态变量的东西我不知道了吗?我假设OnCreate
的实例在应用程序的整个生命周期内都可用。
我是否仍然可以使用Application类初始化变量,或者最好在MainActivity
的{{1}}中完成?