如果我从Activity
开始我的Service
,它将正常运行(通过单击按钮)。但是,如果我从BrodcastReceiver
开始它不起作用。我究竟做错了什么? 这里是我的Service
代码,BroadcastReceiver
从广播接收器启动服务
这里是我的清单文件 http://pastebin.com/fUcM6Qse
如果我从Activity
开始我的Service
,它将正常运行(通过单击按钮)。但是,如果我从BrodcastReceiver
开始它不起作用。我究竟做错了什么? 这里是我的Service
代码,BroadcastReceiver
从广播接收器启动服务
这里是我的清单文件 http://pastebin.com/fUcM6Qse
这是我如何做到这一点,它的工作原理:
public class BadgesReceiver extends BroadcastReceiver {
private static final String TAG = "BadgesReceiver";
public static final String BADGES_UPDATE_ACTION = BuildConfig.PACKAGE_NAME + ".action.UPDATE_BADGES";
@Override
public void onReceive(Context context, Intent intent) {
final String action = intent != null ? intent.getAction() : null;
Log.d(TAG, "onReceive action: " + action);
if (!TextUtils.isEmpty(action) && action.equals(BADGES_UPDATE_ACTION)) {
final Intent i = new Intent(context, MyService.class);
i.setAction(MyService.UPDATE_BADGES_ACTION);
context.startService(i);
}
}
}
请张贴您的主要作品 – sunil 2014-09-12 10:40:39
是否已经在清单中注册了接收者和服务? – Opiatefuchs 2014-09-12 10:43:21
从广播中启动服务时遇到什么问题?你可以看到日志是广播接收机有史以来被称为? – 2014-09-12 10:56:59