0

Ich versuche, AWS SNS Push-Dienste mit FCM in meiner Android App zu integrieren.
Wenn ich versuche, eine Push-Nachricht über SNS Online-Konsole zu senden, erhalte ich dieses Fehlerprotokoll:Fehler bei der Übermittlung der Nachricht: ServiceIntent nicht gefunden

E/FirebaseInstanceId: Failed to resolve target intent service, skipping classname enforcement 
E/PushListenerService: From: ************ /* My Sender ID*/ 
E/PushListenerService: Message: hola 
E/FirebaseInstanceId: Error while delivering the message: ServiceIntent not found. 

ich ein bisschen Online gesucht habe, und ich fand ein schien eine sehr beliebte Antwort zu sein , mit 3 Diensten mit den Klassen GcmIntentService, GcmIDListenerService, RegistrationIntentService. Ich habe diese Klassen und Dienste in meine App aufgenommen, bekomme aber immer noch keine Push-Benachrichtigungen von SNS.
Ich war mir auch nicht sicher, ob es die richtige Lösung für mich ist, da ich nicht nur FCM Services, sondern auch SNS Services nutze.

Dies sind meine vorhandenen Empfänger und Dienstleistungen in meinem Manifest:

<receiver android:name="com.google.android.gms.gcm.GcmReceiver" 
     android:exported="true" 
     android:permission="com.google.android.c2dm.permission.SEND" > 
     <intent-filter> 
      <action android:name="com.google.android.c2dm.intent.RECEIVE"/> 
      <category android:name="com.intap.appme" /> 
     </intent-filter> 
    </receiver> 

    <service android:name=".PushListenerService" 
     android:exported="false" > 
     <intent-filter> 
      <action android:name="com.google.android.c2dm.intent.RECEIVE"/> 
     </intent-filter> 
    </service> 

über die Push-Benachrichtigungen. Wenn ich es über die SNS-Online-Konsole sende, erhalte ich den obigen Protokollfehler, aber wenn ich es über die Firebase-Online-Konsole sende, erhält das Gerät die Push-Benachrichtigung, aber ich erhalte immer noch dieses Protokoll, welches das erste ist und die letzten Zeilen des Protokolls über:

E/FirebaseInstanceId: Failed to resolve target intent service, skipping classname enforcement 
E/FirebaseInstanceId: Error while delivering the message: ServiceIntent not found. 

build.gradle Abhängigkeiten:

dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    wearApp project(':wear') 
    testCompile 'junit:junit:4.12' 
    compile 'com.android.support:appcompat-v7:24.1.1' 
    compile 'com.android.support:design:24.1.1' 
    compile fileTree(dir: 'libs', include: ['activation.jar']) 
    compile fileTree(dir: 'libs', include: ['additionnal.jar']) 
    compile fileTree(dir: 'libs', include: ['mail.jar']) 
    compile 'com.amazonaws:aws-android-sdk-core:2.2.18' 
    compile 'com.amazonaws:aws-android-sdk-s3:2.2.18' 
    compile 'com.amazonaws:aws-android-sdk-ddb:2.2.18' 
    compile 'com.amazonaws:aws-android-sdk-ddb-mapper:2.2.18' 
    compile 'com.amazonaws:aws-android-sdk-ec2:2.2.18' 
    compile 'com.google.android.gms:play-services-plus:9.0.1' 
    compile 'com.amazonaws:aws-android-sdk-sns:2.2.18' 
    compile 'com.google.android.gms:play-services-gcm:9.0.1' 
    compile 'com.android.support:multidex:1.0.1' 
    apply plugin: 'com.google.gms.google-services' 
} 

Könnten Sie mir bitte helfen, es herauszufinden, und es lösen?

+0

Könnten Sie Ihre build.gradle Abhängigkeiten zu der Frage hinzufügen? –

+0

Ich habe build.gradle Abhängigkeiten in die Frage hinzugefügt –

Antwort

1

Zuerst sollten Sie das Google-Dienste-Plugin nach dem Abhängigkeitsblock nicht darin anwenden. Ich sehe auch keine Abhängigkeit, die FirebaseInstanceID hinzufügt, also bin ich nicht sicher, warum dieser Fehler angezeigt wird. Das gemeinsame Verwenden von FCM und GCM ist ebenfalls keine gute Idee, da Sie mehrere Empfänger für die gleiche Nachricht haben. Verwenden Sie das eine oder das andere. Das könnte der Grund sein, warum die SNS-Nachrichten nicht empfangen werden.

Verwandte Themen