8

Miałem aplikację pracującą na analizie składniowej, z powiadomieniami działającymi poprawnie. Zmieniłem opakowanie aplikacji i tworzę nową aplikację na Parse.Parse - Tabela instalacji nie ustawiania urządzeniaToken ani pushType

W nowej aplikacji kolumny deviceToken i pushType pozostają zawsze puste w tabeli _Instalacja, więc wypychania nie działają, nawet jeśli są wysyłane ze strony internetowej Parse, a nowy wpis jest generowany po uruchomieniu aplikacji.

Zaktualizowałem klucze parse dla mojego kodu Java i mojego kodu w chmurze.

Ktoś ma pojęcie, co mogłem przegapić lub co może się zdarzyć, więc ten sam kod ma inne zachowanie w różnych aplikacjach z odpowiednimi konfiguracjami?

Jeśli zaktualizuję jedną z instalacji za pomocą parametru pushType = "gcm" i "deviceToken" tego, który miałem w drugiej aplikacji, to urządzenie otrzyma powiadomienia.

Dziękuję

Odpowiedz

8

ok, miałem podobny problem. obie te kolumny były puste. wynika to głównie z manifestu. Twoje uprawnienia wydają się w porządku, ponieważ otrzymujesz powiadomienie, a także masz możliwość reg w bazie danych parsowania.

, więc problem powinien znajdować się w tagach <receiver>. Powinno być ich tylko 2, tak jak moje.

<receiver android:name="com.parse.ParseBroadcastReceiver"> 
      <intent-filter> 
       <action android:name="android.intent.action.BOOT_COMPLETED" /> 
       <action android:name="android.intent.action.USER_PRESENT" /> 
      </intent-filter> 
     </receiver> 
     <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" /> 

       <!-- 
        IMPORTANT: If you change the package name of this sample app, 
        change "com.parse.tutorials.pushnotifications" in the lines 
        below to match the new package name. 
       --> 
       <category android:name="com.example.ifis" /> 
      </intent-filter> 
     </receiver> 

jeśli masz odbiornik jak "com.google.android.gcm.GCMBroadcastReceiver" pls usunąć, a także jednym <service android:name="com.parse.PushService" />

+2

Ok, przeglądając manifest, zobaczyłem, że pomyłkowo nazwa pakietu ... – MarionaDSR

0

Włącz rejestrowanie składniowy:

Parse.setLogLevel(Parse.LOG_LEVEL_VERBOSE); 

W moim przypadku było brakujące uprawnienia GCM

<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" /> 
<permission android:name="my.package.permission.C2D_MESSAGE" android:protectionLevel="signature" /> 
<uses-permission android:name="my.package.permission.C2D_MESSAGE" /> 
Powiązane problemy