Attualmente sto utilizzando parse per inviare e ricevere notifiche push su un'app Android.
Tutto è andato bene fino a quando ho aggiunto un suffisso id applicazione alla mia build.gradle per il tipo di debug:Android Parse, notifiche e buildTypes
defaultConfig {
applicationId "com.example.myapp"
...
}
buildTypes {
debug {
applicationIdSuffix ".debug"
...
}
release {
...
}
}
Ora posso vedere in Parse che le nuove installazioni sono registrati con il campo ApplicationId: com.example.myapp.debug
, così in il file manifest ho utilizzato la seguente parte di codice:
<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="${applicationId}" />
</intent-filter>
</receiver>
In questo modo ho pensato che la registrazione fosse dinamica in base al tipo di build.
Attualmente non funziona: le installazioni registrate con il suffisso .debug
non hanno GCMSenderId
né DeviceToken
e quindi non posso ricevere alcuna notifica. Ovviamente mi manca un punto, o non ho capito come funziona la registrazione, ma non riesco a capire come farlo funzionare bene.
Parse usa l'applicationId per registrare l'applicazione, o il nome reale del pacchetto (usato per R)?
Qualcuno è riuscito a gestire le notifiche parse con diversi buildTypes (suffisso applicationId)?
Se ti fa sentire meglio, mi sono imbattuto nella stessa cosa e il tuo "argomento inutile" mi ha salvato da me stesso (e più dolore). :) Grazie –