反应原生firebase - android无法构建

Gil*_*han 9 android push-notification firebase react-native

由于某种原因,我无法构建我的项目。昨天一切正常,看看https://firebase.google.com/support/release-notes/android#update_-_april_02_2019有一个来自 5/11/21 的重要更新。

我尝试按照建议更改 minSdkVersion 但仍然没有解决方案。

这是错误:

error Failed to install the app. Make sure you have the Android development environment set up: https://reactnative.dev/docs/environment-setup.
Error: Command failed: gradlew.bat app:installDebug -PreactNativeDevServerPort=8081
C:\Users\Gilad\SaveLatestJoyRide-FE\joyride-fe\node_modules\react-native-push-notification\android\src\main\java\com\dieam\reactnativepushnotification\modules\RNPushNotification.java:39: error: cannot find symbol
import com.google.firebase.iid.FirebaseInstanceId;
                              ^
  symbol:   class FirebaseInstanceId
  location: package com.google.firebase.iid
C:\Users\Gilad\SaveLatestJoyRide-FE\joyride-fe\node_modules\react-native-push-notification\android\src\main\java\com\dieam\reactnativepushnotification\modules\RNPushNotification.java:40: error: cannot find symbol
import com.google.firebase.iid.InstanceIdResult;
                              ^
  symbol:   class InstanceIdResult
  location: package com.google.firebase.iid
C:\Users\Gilad\SaveLatestJoyRide-FE\joyride-fe\node_modules\react-native-push-notification\android\src\main\java\com\dieam\reactnativepushnotification\modules\RNPushNotification.java:143: error: cannot find symbol
              .addOnCompleteListener(new OnCompleteListener<InstanceIdResult>() {
                                                            ^
  symbol:   class InstanceIdResult
  location: class RNPushNotification
C:\Users\Gilad\SaveLatestJoyRide-FE\joyride-fe\node_modules\react-native-push-notification\android\src\main\java\com\dieam\reactnativepushnotification\modules\RNPushNotification.java:145: error: cannot find symbol
                  public void onComplete(@NonNull Task<InstanceIdResult> task) {
                                                       ^
  symbol: class InstanceIdResult
C:\Users\Gilad\SaveLatestJoyRide-FE\joyride-fe\node_modules\react-native-push-notification\android\src\main\java\com\dieam\reactnativepushnotification\modules\RNPushNotification.java:142: error: cannot find symbol
      FirebaseInstanceId.getInstance().getInstanceId()
      ^
  symbol:   variable FirebaseInstanceId
  location: class RNPushNotification
C:\Users\Gilad\SaveLatestJoyRide-FE\joyride-fe\node_modules\react-native-push-notification\android\src\main\java\com\dieam\reactnativepushnotification\modules\RNPushNotification.java:289: error: cannot find symbol
                  FirebaseInstanceId.getInstance().deleteInstanceId();
                  ^
  symbol: variable FirebaseInstanceId
Note: C:\Users\Gilad\SaveLatestJoyRide-FE\joyride-fe\node_modules\react-native-push-notification\android\src\main\java\com\dieam\reactnativepushnotification\modules\RNPushNotificationHelper.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: C:\Users\Gilad\SaveLatestJoyRide-FE\joyride-fe\node_modules\react-native-push-notification\android\src\main\java\com\dieam\reactnativepushnotification\modules\RNPushNotification.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
6 errors

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':react-native-push-notification:compileDebugJavaWithJavac'.
> Compilation failed; see the compiler error output for details.
Run Code Online (Sandbox Code Playgroud)

请帮忙!:(

Ahm*_*san 22

只需在 android/build.gradle 下添加以下内容

buildscript {
    ext {
    .....
    firebaseMessagingVersion = "21.1.0"
}
Run Code Online (Sandbox Code Playgroud)


小智 20

我最近遇到了这个问题,解决这个问题很容易。您需要升级您的本机推送通知。我建议您在 package.json 中将其更改为本地推送通知版本为 ^7.3.0。这对我有用。Iho[e 这有帮助。