React native React Native fb sdk找不到符号CallbackManager
React本机和fbsdk版本:React native React Native fb sdk找不到符号CallbackManager,react-native,react-native-fbsdk,React Native,React Native Fbsdk,React本机和fbsdk版本: "react": "16.6.3", "react-native": "0.58.5", "react-native-fbsdk": "^0.8.0" 我得到了以下错误: > Task :app:compileDebugJavaWithJavac FAILED C:\Users\xxxx\Desktop\project\android\app\src\main\java\com\project\MainApplication.java:22: error
"react": "16.6.3",
"react-native": "0.58.5",
"react-native-fbsdk": "^0.8.0"
我得到了以下错误:
> Task :app:compileDebugJavaWithJavac FAILED
C:\Users\xxxx\Desktop\project\android\app\src\main\java\com\project\MainApplication.java:22: error: cannot find symbol
private static CallBackManager mCallbackManager = CallbackManager.Factory.create();
^
symbol: class CallBackManager
location: class MainApplication
C:\Users\xxxx\Desktop\project\android\app\src\main\java\com\project\MainApplication.java:24: error: cannot find symbol
protected static CallBackManager getCallbackManager() {
^
symbol: class CallBackManager
location: class MainApplication
2 errors
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:compileDebugJavaWithJavac'.
> Compilation failed; see the compiler error output for details.
这个问题似乎与代码的这一部分有关,但我不太清楚到底出了什么问题。我完全按照他们的指示去做
将这些行添加到app/build.gradle
:
implementation project(':react-native-fbsdk')
implementation 'com.facebook.android:facebook-android-sdk:4.34.0'
include ':react-native-fbsdk'
project(':react-native-fbsdk').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-fbsdk/android')
然后将这些设置添加到设置中。gradle
:
implementation project(':react-native-fbsdk')
implementation 'com.facebook.android:facebook-android-sdk:4.34.0'
include ':react-native-fbsdk'
project(':react-native-fbsdk').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-fbsdk/android')
如果有人碰巧遇到同样的问题,这与npm没有正确地将FBSDK链接到项目有关。我尝试使用
npm安装
和npm链接
,但没有成功,尽管npm没有抛出任何错误。但是,使用react native安装sdk解决了以下问题:
react-native install react-native-fbsdk
react-native link react-native-fbsdk
如果在尝试链接时遇到错误,请打开项目根文件夹上的命令行并运行:
cd android
gradlew clean
此外,虽然他们的官方文件中确实包含有关安装过程的说明,但我建议您遵循,因为它在可读性和细节方面都要好得多。你能给你展示一下
app/build.gradle
和你的设置。gradle
?我在app/build.gradle
:实现项目(“:react native fbsdk”)中添加了这些行实现'com.facebook.android:facebook android sdk:4.34.0'和这些设置。gradle:包括:react native fbsdk'项目(':react native fbsdk')。projectDir=新文件(rootProject.projectDir,../node_modules/react native fbsdk/android')您不需要implementation'com.facebook.android:facebook android sdk:4.34.0'
,因为react native fbsdk已经使用了fb android sdk的4.38版本。感谢大家的提醒,删除这一行并不能解决问题。