Androidは別のアプリのサービスを開始

1156 ワード

最近AppAからAppBのサービスを起動し、このエラーを報告しましたNot allowed to startサービスIntent
ソリューション:
1.AppBにおけるサービスの構成
  

      
           
      
  

name、exported、permissionの3つの属性は欠かせません.intent-filterのactionを追加するのはカスタマイズされています.
 
2.AppBのMainfest.xmlの権限構成


3.AppAのMainfest.xmlの権限構成

 
サービスを開始するコード
Intent intent = new Intent();
intent.setAction("android.intent.action.START_B_SERVICE");
intent.setComponent(new ComponentName("com.aa.securityassitant","com.aa.securityassitant.MyService"));
startService(intent);

以上のnew ComponentName(「AppBのパッケージ名」,「AppBのサービスのフルパス」);