エラーSecurityException: Not allowed to start service Intent
しかし、多くのトピックを検索した後、それは良い解決策を持っていないようです。
私を助けてください、
おかげで、
p/s:
私は正しいSENDER_ID
プロジェクト番号はGoogle API Console
と修正package name
。
エラー:
Caused by: Java.lang.SecurityException: Not allowed to start service Intent { act=com.google.Android.c2dm.intent.REGISTER pkg=com.google.Android.gms (has extras) } without permission com.google.Android.c2dm.permission.RECEIVE
at Android.app.ContextImpl.startServiceAsUser(ContextImpl.Java:1785)
at Android.app.ContextImpl.startService(ContextImpl.Java:1757)
at Android.content.ContextWrapper.startService(ContextWrapper.Java:480)
at com.google.Android.gms.gcm.GoogleCloudMessaging.e(Unknown Source)
at com.google.Android.gms.gcm.GoogleCloudMessaging.register(Unknown Source)
at controller.RegisterGCMClientAsync.doInBackground(RegisterGCMClientAsync.Java:62)
at controller.RegisterGCMClientAsync.doInBackground(RegisterGCMClientAsync.Java:18)
at Android.os.AsyncTask$2.call(AsyncTask.Java:287)
at Java.util.concurrent.FutureTask.run(FutureTask.Java:234)
at Android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.Java:230)
at Java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.Java:1080)
at Java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.Java:573)
at Java.lang.Thread.run(Thread.Java:841)
Manifest.xmlファイル:
<manifest xmlns:Android="http://schemas.Android.com/apk/res/Android"
package="app.cloudstringers" >
<application
Android:allowBackup="true"
Android:icon="@drawable/ic_launcher"
Android:label="@string/app_name"
Android:theme="@style/AppTheme" >
<activity
Android:name="app.cloudstringers.Cloudstringers"
Android:label="@string/app_name" >
<intent-filter>
<action Android:name="Android.intent.action.MAIN" />
<category Android:name="Android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity Android:name="ui.fragment.RegisterWithAccountsFragment" />
<meta-data Android:name="com.google.Android.gms.version"
Android:value="@integer/google_play_services_version" />
<permission
Android:name="app.cloudstringers.permission.C2D_MESSAGE"
Android:protectionLevel="signature" />
<!-- Receiver GCM -->
<receiver
Android:name="app.cloudstringers.GcmBroadcastReceiver"
Android:permission="com.google.Android.c2dm.permission.SEND" >
<intent-filter>
<action Android:name="com.google.Android.c2dm.intent.RECEIVE" />
<category Android:name="app.cloudstringers" />
</intent-filter>
</receiver>
<!-- Service GCM -->
<service
Android:exported="true"
Android:name="app.cloudstringers.GcmIntentService" />
<uses-permission Android:name="com.google.Android.c2dm.permission.RECEIVE" />
<uses-permission Android:name="app.cloudstringers.permission.C2D_MESSAGE" />
<uses-permission Android:name="Android.permission.GET_ACCOUNTS" />
<uses-permission Android:name="Android.permission.INTERNET" />
<uses-permission Android:name="Android.permission.WAKE_LOCK" />
</application>
[〜#〜] solution [〜#〜]間違った行を入れました。 <use-permission>
タグ外<application>
鬼ごっこ。
これに変更:
<uses-permission Android:name="com.google.Android.c2dm.permission.RECEIVE" />
<uses-permission Android:name="app.cloudstringers.permission.C2D_MESSAGE" />
<uses-permission Android:name="Android.permission.GET_ACCOUNTS" />
<uses-permission Android:name="Android.permission.INTERNET" />
<uses-permission Android:name="Android.permission.WAKE_LOCK" />
<permission
Android:name="app.cloudstringers.permission.C2D_MESSAGE"
Android:protectionLevel="signature" />
<application
Android:allowBackup="true"
Android:icon="@drawable/ic_launcher"
Android:label="@string/app_name"
Android:theme="@style/AppTheme" >
<activity
Android:name="app.cloudstringers.Cloudstringers"
Android:label="@string/app_name" >
<intent-filter>
<action Android:name="Android.intent.action.MAIN" />
<category Android:name="Android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity Android:name="ui.fragment.RegisterWithAccountsFragment" />
<meta-data Android:name="com.google.Android.gms.version"
Android:value="@integer/google_play_services_version" />
<!-- Receiver GCM -->
<receiver
Android:name="app.cloudstringers.GcmBroadcastReceiver"
Android:permission="com.google.Android.c2dm.permission.SEND" >
<intent-filter>
<action Android:name="com.google.Android.c2dm.intent.RECEIVE" />
<category Android:name="app.cloudstringers" />
</intent-filter>
</receiver>
<!-- Service GCM -->
<service
Android:exported="true"
Android:name="app.cloudstringers.GcmIntentService" />
</application>
<use-permission>
タグ外<application>
鬼ごっこ。
Playストアが機能するかどうかを確認する必要があります。動作しない場合は、googleサービスを開始できません。