Deps:
"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
可读本机数组/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
可读本机数组/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
可读本机数组/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
可读本机数组/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
可读本机数组 5 错误 :react-native-admob:compileReleaseJavaWithJavac FAILED
失败:生成失败,出现异常。 * 出了什么问题:任务":react-native-admob:compileReleaseJavaWithJavac"执行失败。 编译失败;有关详细信息,请参阅编译器错误输出。
我也尝试了RN 0.51并手动取消链接并重新链接,但没有任何效果。
我认为您的 android 项目仍然具有旧的链接。 您应该在安卓工作室中打开您的项目并检查您的主要活动类
尝试先检查您的MainActivity
,即使发生错误也是如此。然后我认为您必须将react-native-admob
版本从 v2.0.0 降级到 v1.3.2。它肯定会起作用。
因为,v2.0.0中仍然存在一些问题,该问题仍在beta
。您可以在此处github
上查看有关此问题的更多信息,https://github.com/sbugert/react-native-admob/issues/231
经过几天的调查以及取消链接和重新链接,我用以下方法解决了它:
maven {
url "$rootDir/../node_modules/react-native/android"
}
build.gradle
文件中。
旧网址已"$projectDir/../../node_modules/react-native/android"
所以这是一个渐变问题。在构建它时,它曾经得到旧的反应原生安卓库。
更新文件 :- Build.gradle(react-native-admob)
//实现 'com.google.android.gms:play-services-ads:+'//评论此行
实现 'com.google.android.gms:play-services-ads:19.7.0'//添加此行