如果你要保留你的状态的话,那就用START_REDELIVER_INTENT,因为START_STICKY是不保留启动的intent的状态的。 具体实现大概:你按HOME键新建的notification中带一个启动service的intent(这个你应该知道怎么写吧),把你要保存的状态数据放到这个intent中,这个intent就传到service中了,接着 @Override public int onStartCommand(Intent intent, int flags, int startId) { handleCommand(intent);//这个intent就保存了你的数据,然后恢复楼主所需的状态哈 // We want this service to continue running until it is explicitly // stopped, so return sticky. return START_REDELIVER_INTENT; }
这个Service 能够给个详细的思路吗!
现在有个问题,应用被回收之后,点击Notification是重新启动应用,但是并没有整个应用都启动,导致该页面使用的全局变量是个空指针,导致应用崩溃退出。这个问题怎么解决啊!
具体实现大概:你按HOME键新建的notification中带一个启动service的intent(这个你应该知道怎么写吧),把你要保存的状态数据放到这个intent中,这个intent就传到service中了,接着
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
handleCommand(intent);//这个intent就保存了你的数据,然后恢复楼主所需的状态哈
// We want this service to continue running until it is explicitly
// stopped, so return sticky.
return START_REDELIVER_INTENT;
}