【问题标题】:Cannot find symbol toArrayList() android react native and react-native-admob找不到符号 toArrayList() android react native 和 react-native-admob
【发布时间】:2017-12-19 12:49:01
【问题描述】:

部门:

"native-base": "2.3.5",
"react": "16.0.0",
"react-native": "0.50.4",
"react-native-admob": "^2.0.0-beta.3",

在从 RN 0.45 更新到 0.50 和 RN-Admob 从 1.3.2 更新到 2.0.0-beta.3 之后

当尝试使用 react-native run-android

构建时

/node_modules/react-native-admob/android/src/main/java/com/sbugert/rnadmob/RNAdMobInterstitialAdModule.java:117:

错误:找不到符号 ArrayList list = nativeArray.toArrayList();

                                        ^   symbol:   method toArrayList()   location: variable nativeArray of type

ReadableNativeArray /Users/dobre/Desktop/projects//node_modules/react-native-admob/android/src/main/java/com/sbugert/rnadmob/RNAdMobRewardedVideoAdModule.java:129:

错误:找不到符号 ArrayList list = nativeArray.toArrayList();

                                      ^   symbol:   method toArrayList()   location: variable nativeArray of type

ReadableNativeArray /Users/dobre/Desktop/projects//node_modules/react-native-admob/android/src/main/java/com/sbugert/rnadmob/RNPublisherBannerViewManager.java:252:

错误:找不到符号 ArrayList list = nativeArray.toArrayList();

                                        ^   symbol:   method toArrayList()   location: variable nativeArray of type

ReadableNativeArray /Users/dobre/Desktop/projects//node_modules/react-native-admob/android/src/main/java/com/sbugert/rnadmob/RNPublisherBannerViewManager.java:271:

错误:找不到符号 ArrayList list = nativeArray.toArrayList();

                                        ^   symbol:   method toArrayList()   location: variable nativeArray of type

ReadableNativeArray /Users/dobre/Desktop/projects//node_modules/react-native-admob/android/src/main/java/com/sbugert/rnadmob/RNAdMobBannerViewManager.java:223:

错误:找不到符号 ArrayList list = nativeArray.toArrayList();

                                        ^   symbol:   method toArrayList()   location: variable nativeArray of type

ReadableNativeArray 5 个错误 :react-native-admob:compileReleaseJavaWithJavac 失败

FAILURE:构建失败并出现异常。 * 出了什么问题:任务 ':react-native-admob:compileReleaseJavaWithJavac' 执行失败。 编译失败;有关详细信息,请参阅编译器错误输出。

我也尝试了 RN 0.51 和手动取消链接并重新链接,但没有任何效果。

【问题讨论】:

  • 当使用 react-native 和升级包时,很多时候事情都失败了!您是否尝试过 rm -rf 您的整个应用程序并重新安装,然后安装,然后重新链接。这个问题听起来像是一个链接问题,react-native 链接并不总是按我自己的预期工作。最终,我通过手动安装降级到 xcode 9,然后通过 xcode 重建(我不太了解 xcode,这很容易)。当我安装 High Sierra 并升级 Xcode 时,这一切都发生在我身上。 (希望这有助于即使您使用的是 android)
  • IOS 对我们来说工作得很好......我们的 android 有问题

标签: android react-native admob


【解决方案1】:

我认为您的 android 项目仍然有旧的链接。 您应该在 android studio 中打开您的项目并检查您的主要活动类

【讨论】:

  • 我会在下周检查它并让你知道它是否有效。谢谢!
  • 我尝试取消链接该模块并再次链接它,然后我尝试手动链接它但没有任何效果
  • 尝试在 gradle 中更新 android 构建工具并重建您的项目
【解决方案2】:

尝试先检查您的MainActivity,即使出现错误。然后我认为你必须将你的react-native-admob 版本从 v2.0.0 降级到 v1.3.2。它肯定会起作用。

因为 v2.0.0 中存在一些问题,仍然是 beta。你可以在github这里查看更多关于这个问题的信息,https://github.com/sbugert/react-native-admob/issues/231

【讨论】:

  • 降级对我来说不是一个选项,我在 github 上指出了这个问题。我的问题与 v2.0.0 beta 和 RN>=0.50 有关
【解决方案3】:

经过几天的调查以及取消链接和重新链接后,我解决了这个问题:

  maven {

            url "$rootDir/../node_modules/react-native/android"

        }

build.gradle 文件中。

旧网址是"$projectDir/../../node_modules/react-native/android"

所以这是一个 gradle 问题。在构建它时,它用于获取旧的 react-native android 库。

【讨论】:

    【解决方案4】:

    更新文件:- Build.gradle(react-native-admob)

    //implementation 'com.google.android.gms:play-services-ads:+' // 注释这一行

    implementation 'com.google.android.gms:play-services-ads:19.7.0' // 添加这一行

    【讨论】:

      猜你喜欢
      • 2022-08-02
      • 2018-03-16
      • 1970-01-01
      • 1970-01-01
      • 2023-01-05
      • 2021-11-25
      • 2022-08-04
      • 2021-10-14
      • 2019-05-10
      相关资源
      最近更新 更多