如果我從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