2014-04-24 85 views
1

我創建的Android推送通知AIR本機擴展,但是當我跑我得到異常,如應用程序:權限拒絕:接收意向

權限拒絕:接收意向{行動= com.google.android .c2dm.intent.REGISTRATION cat = [air.com.test.mobile](有額外)} to air.com.test.mobile.debug需要air.com.test.mobile.permission.C2D_MESSAGE,因爲發件人com.google .android.gsf(UID 10019)

清單:

<android> 
     <colorDepth>16bit</colorDepth> 
     <manifestAdditions><![CDATA[ 
    <manifest android:installLocation="auto"> 

     <uses-permission android:name="android.permission.INTERNET"/>  
     <uses-permission android:name="android.permission.DISABLE_KEYGUARD"/> 
     <uses-permission android:name="android.permission.WAKE_LOCK"/> 
     <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>  
     <uses-permission android:name="android.permission.VIBRATE" /> 
     <uses-permission android:name="android.permission.GET_ACCOUNTS" /> 

     <permission android:name="air.com.test.mobile.permission.C2D_MESSAGE" android:protectionLevel="signature" /> 
     <uses-permission android:name="air.com.test.mobile.permission.C2D_MESSAGE" /> 

     <uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" /> 

     <application android:enabled="true" android:hardwareAccelerated="false"> 

     <receiver android:name="com.google.android.gcm.GCMBroadcastReceiver" android:permission="com.google.android.c2dm.permission.SEND"> 
      <intent-filter> 
       <action android:name="com.google.android.c2dm.intent.RECEIVE"/> 
       <action android:name="com.google.android.c2dm.intent.REGISTRATION"/> 
       <category android:name="air.com.test.mobile"/> 
      </intent-filter> 
     </receiver> 
     <service android:name="com.adobe.sampleasextension.GCMIntentService" /> 
    <activity android:excludeFromRecents="false"> 
     <intent-filter> 
     <action android:name="android.intent.action.MAIN"/> 
     <category android:name="android.intent.category.LAUNCHER"/> 
     </intent-filter> 
    </activity> 
    </application> 
    </manifest> 

    ]]></manifestAdditions> 
    </android> 

回答

0

添加到您的一個與標籤兄弟ndroidManifest文件和標籤的子

<permission 
     android:name="air.com.test.mobile.permission.C2D_MESSAGE" 
     android:protectionLevel="signature" /> 

    <uses-permission android:name="air.com.test.mobile.permission.C2D_MESSAGE" /> 

你必須首先創建權限與推送通知你的包名稱,然後定義同意您的應用程序,如上圖所示

1

好了,不看到你的清單,並根據你得到的錯誤,我建議你將以下添加到您的清單:

<permission android:protectionLevel="signature" 
    android:name="air.com.test.mobile.permission.C2D_MESSAGE" /> 
<uses-permission android:name="air.com.test.mobile.permission.C2D_MESSAGE" /> 

編輯:

我注意到這個錯誤也提到了air.com.test.mobile.debug。其中哪些是你的應用程序的主要軟件包?也許你應該更改清單中所有有air.com.test.mobileair.com.test.mobile.debug的地方。

+0

我已經添加了這些權限 – Vamshi

+0

我已經添加了我的清單..請查看它。 – Vamshi

+0

@Vamshi查看我的更新回答 – Eran