2015-01-18 5 views
0

Привет, я знаю, что этот вопрос задан несколько раз, но мое требование немного отличается, поэтому PLS несут меня.Приемник GCM с Parse

Я использую две разные библиотеки в своем приложении для Android. Одним из них является для синтаксического анализа нажимного уведомления, который имеет следующие объявления:

<receiver 
      android:name="com.parse.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="com.airloyal.ladooo" /> 
      </intent-filter> 
     </receiver> 

и декларация другого приемника:

<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="com.airloyal.ladooo" /> 
      </intent-filter> 
     </receiver> 

Я определенно нужен оба библиотеки в моем приложении, чтобы извлекая один не являются вариант. Я использую оба приемника для разных целей. Но когда я объявляю оба приемника, возникает конфликт, и я не могу получить никаких push-уведомлений.

Может ли кто-нибудь указать мне направление в правильном направлении?

P.S Обе библиотеки являются файлами jar, и у меня нет контроля над приемниками обоих. Поэтому пересылка не является вариантом.

Любая помощь будет оценена по достоинству. Благодаря

ответ

1

Если широковещательные приемники конфликтуют друг с другом, вы можете попытаться установить priority вашего приемника в AndroidManifest.xml в <intent-filter>

Используйте этот атрибут, только если вам действительно нужно ввести конкретный порядок, в котором трансляции, или хотите заставить Android предпочесть одно действие над другими.

Значение должно быть integer, например, «100». Higher numbers have a higher priority. Значение по умолчанию равно 0. Значение должно быть больше, чем -1000 и менее 1000.

пример кода:

<intent-filter android:icon="drawable resource" 
       android:label="string resource" 
       android:priority="integer" > 
    . . . 
</intent-filter> 

Кроме того, еще один способ решить, пожалуйста, обратитесь к here.

Смежные вопросы