메시지가 수신되었을 때 Android의 Firebase Messaging이 갑자기 중단되기 시작했습니다.
현재 react native, react-native-firebase 및 react-native-push-notification을 사용하고 있습니다.오늘 갑자기 파이어베이스 메시지로 인해 앱이 다운되기 전까지는 모든 것이 정상이었습니다.오류 메시지는 다음과 같습니다.
Process: com.packagename, PID: 30087
java.lang.AbstractMethodError: abstract method "com.google.android.gms.tasks.Task com.google.firebase.iid.WithinAppServiceBinder$IntentHandler.zza(android.content.Intent)"
at com.google.firebase.iid.WithinAppServiceBinder.zza(com.google.firebase:firebase-iid@@20.2.2:9)
at com.google.firebase.iid.zzaw.zza(com.google.firebase:firebase-iid@@20.2.2:30)
at com.google.firebase.iid.zzaw.onServiceConnected(com.google.firebase:firebase-iid@@20.2.2:59)
at android.app.LoadedApk$ServiceDispatcher.doConnected(LoadedApk.java:2067)
at android.app.LoadedApk$ServiceDispatcher$RunConnection.run(LoadedApk.java:2099)
at android.os.Handler.handleCallback(Handler.java:883)
at android.os.Handler.dispatchMessage(Handler.java:100)
at android.os.Looper.loop(Looper.java:237)
at android.app.ActivityThread.main(ActivityThread.java:8016)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1076)
이 오류는 알림을 수신할 때 발생하지만 데이터 메시지를 트리거하지는 않습니다.또한 충돌을 유발하기 전에 알림을 수신하고 처리합니다.
저는 이 오류가 react-native-firebase/app 버전을 변경함으로써 발생한 것일 수 있다고 생각하여 제 프로젝트를 이전의 작동 버전으로 되돌렸습니다.그러나 청소 및 재구축 후에도 동일한 오류가 발생합니다.또한 실제 네이티브 코드에 대해 어떤 의미가 있는지는 모르겠지만, 대응 네이티브 측에 설정된 알림 수신기가 없는 경우에도 발생합니다.무엇이 문제가 될 수 있습니까?이전에 작동했던 react-native-firebase/messaging(7.1.5) 및 react-native-firebase/app(7.2.0) 버전을 사용하고 있습니다.
2020년 7월 9일 편집: 출시되었습니다.firebase-iid
그리고.firebase-messaging
»20.2.3
이 문제를 해결하려면 최신 버전으로 업그레이드하십시오.
[여기 파이어베이스] 어제 공개된 것처럼 보입니다.firebase-messaging
그리고.firebase-iid
이 충돌을 유발할 수 있는 버그를 포함합니다.우리는 해결책을 열심히 찾고 있습니다.
현재로서는 6월 18일에 출시된 버전을 사용하는 것이 최선입니다. https://firebase.google.com/support/release-notes/android#2020-06-18
com.google.firebase:firebase-messaging:20.2.1
com.google.firebase:firebase-iid:20.2.1
우리는 수정 작업을 진행 중이며 곧 새 버전이 출시되기를 희망합니다.그러면 이 답변을 업데이트하고 릴리스 정보는 https://firebase.google.com/support/release-notes/android 에서 확인할 수 있습니다.
추가를 시도했습니다.firebaseMessagingVersion = "20.2.1"
프로젝트의 android/build.gradle
우리를 위해 고쳐준 거지우리는 조사했습니다.safeExtGet
루트 프로젝트 파일에서 최상위 변수를 추출하려고 합니다.
이런 식으로 하면 노드 모듈에 손을 댈 필요가 없었습니다.
ext {
googlePlayServicesVersion = "16.+"
firebaseVersion = "17.3.4"
firebaseMessagingVersion = "20.2.1"
}
이 버전에서도 동일한 문제가 발생합니다.그리고 네, "@react-native-firebase/app": "^6.7.1", "@react-native-firebase/messaging": "^6.7.1",
문제 해결:
- react-native-push-notification/build.gradle로 이동합니다.
- defirebaseVersion = safe 변경FirebaseVersion = safe를 정의하는 ExtGet('firebaseVersion', '+')ExtGet('firebaseVersion', '20.2.1')
20.2.2 버전은 안정적이지 않고 모든 종류의 이상한 문제를 일으키고 있었습니다.
이 업그레이드를 통해 문제가 해결되었습니다.
implementation 'com.google.firebase:firebase-messaging:20.2.3'
이 사건은 나에게 효과가 있습니다.
implementation "com.google.firebase:firebase-messaging:20.2.3"
implementation "com.google.firebase:firebase-analytics:17.4.4"
이 문제는 이 종속성의 최신 버전에서 해결되었습니다.https://firebase.google.com/support/release-notes/android#messaging_v20-2-3
언급URL : https://stackoverflow.com/questions/62767041/firebase-messaging-on-android-suddenly-started-crashing-when-message-received
'programing' 카테고리의 다른 글
출력 문자열 형식 지정, 오른쪽 정렬 (0) | 2023.07.04 |
---|---|
상태 변경 시 믹스인을 사용하여 차트를 업데이트하는 방법은 무엇입니까? (0) | 2023.07.04 |
URL 쿼리에 대한 이름 값 모음? (0) | 2023.07.04 |
Firestore 쿼리 하위 컬렉션 (0) | 2023.07.04 |
데이터 프레임을 s3 Python에 직접 csv에 저장 (0) | 2023.07.04 |