Android 由于上下文为NULL,无法访问Singleton状态
我们面临Android应用程序的问题。有一个名为SingleTon的类扩展了应用程序,我们将其用于状态管理器。当应用程序在后台运行时,如果我打开推送通知,我将无法访问SingleTon类,因为o上下文为空,这就是应用程序崩溃的原因。若应用程序处于待机模式,也会发生同样的情况。 在这里,我提到了我的单例类代码: 公共类StateManager扩展应用程序{ 公共字符串名Android 由于上下文为NULL,无法访问Singleton状态,android,push-notification,singleton,state-management,Android,Push Notification,Singleton,State Management,我们面临Android应用程序的问题。有一个名为SingleTon的类扩展了应用程序,我们将其用于状态管理器。当应用程序在后台运行时,如果我打开推送通知,我将无法访问SingleTon类,因为o上下文为空,这就是应用程序崩溃的原因。若应用程序处于待机模式,也会发生同样的情况。 在这里,我提到了我的单例类代码: 公共类StateManager扩展应用程序{ 公共字符串名 public String LastName; private static StateManager instance; p
public String LastName;
private static StateManager instance;
public static synchronized StateManager getInstance() {
return instance;
}
public String getFirstName() {
return FirstName;
}
public void setFirstName(String firstName) {
FirstName = firstName;
}
public String getLastName() {
return LastName;
}
public void setLastName(String lastName) {
LastName = lastName;
}
@Override
public void onCreate() {
super.onCreate();
instance = this;
Parse.enableLocalDatastore(this);
Parse.initialize(this, "xxxx", "xxxxx");
ParseInstallation.getCurrentInstallation().saveInBackground();
}
@Override
public void onTerminate() {
instance =this;
super.onTerminate();
}
}
可能是您的实例不正确,请尝试下面的代码
public static StateManager getInstance(){
if(instance== null){
instance= new StateManager();
}
return instance;
}
只需将这一行放在应用程序类的onCreate中
instance=new StateManager;如果我创建新实例,StateManager届时将为null。因此,我希望在主活动中访问上下文,以便可以在主活动中访问此statemanegr类。如果StateManager实例为null,则您无法访问这些方法,它将引发异常。在进行此更改后,您是否也会得到相同的。。?