如何解决是否可以从BroadcastReceiver调用非活动类,如果可以,我们该怎么做?
| 我有一个BroadcastReceiver,它会在电话状态更改时通知,那时我不希望从ѭ0this(这位于我的非活动类)中获取数据并将其保存到我的SQLite数据库中。但是现在我遇到了问题上课时。 由于我是Android新手,因此不胜感激。 提前致谢解决方法
您可以从BroadcastReceiver启动IntentService,然后从那里开始任何您想做的事情。
public class UpdateReceiver extends BroadcastReceiver {
private static Context mContext;
@Override
public void onReceive(Context context,Intent intent) {
mContext = context;
context.startService(new Intent(context,UpdateService.class));
}
public static class UpdateService extends IntentService {
public UpdateService() {
super(\"UpdateService\");
}
@Override
protected void onHandleIntent(Intent intent) {
// Do whatever you want from here
Logic.doSomething(mContext);
}
}
}
将服务添加到清单。
<service android:name=\"com.example.UpdateReceiver$UpdateService\" />