1

我正在尝试将 Facebook SDK 集成到我的 android 应用程序中。我下载facebook-android-sdk-4.5.1并按照开发者指南中的步骤进行操作。当我尝试运行HelloFacebookSampleSDK 的示例文件夹中的示例时,我收到以下错误:

08-31 18:37:19.399: E/AndroidRuntime(277): FATAL EXCEPTION: main
08-31 18:37:19.399: E/AndroidRuntime(277): java.lang.NoSuchFieldError:     java.util.Locale.ROOT
08-31 18:37:19.399: E/AndroidRuntime(277):  at com.facebook.FacebookSdk.loadDefaultsFromMetadata(FacebookSdk.java:623)
08-31 18:37:19.399: E/AndroidRuntime(277):  at com.facebook.FacebookSdk.sdkInitialize(FacebookSdk.java:203)
08-31 18:37:19.399: E/AndroidRuntime(277):  at com.facebook.FacebookSdk.sdkInitialize(FacebookSdk.java:173)
08-31 18:37:19.399: E/AndroidRuntime(277):  at com.example.image.HelloFacebookSampleActivity.onCreate(HelloFacebookSampleActivity.java:117)
08-31 18:37:19.399: E/AndroidRuntime(277):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
08-31 18:37:19.399: E/AndroidRuntime(277):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
08-31 18:37:19.399: E/AndroidRuntime(277):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
08-31 18:37:19.399: E/AndroidRuntime(277):  at android.app.ActivityThread.access$2300(ActivityThread.java:125)
08-31 18:37:19.399: E/AndroidRuntime(277):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
08-31 18:37:19.399: E/AndroidRuntime(277):  at android.os.Handler.dispatchMessage(Handler.java:99)
08-31 18:37:19.399: E/AndroidRuntime(277):  at android.os.Looper.loop(Looper.java:123)
08-31 18:37:19.399: E/AndroidRuntime(277):  at android.app.ActivityThread.main(ActivityThread.java:4627)
08-31 18:37:19.399: E/AndroidRuntime(277):  at java.lang.reflect.Method.invokeNative(Native Method)
08-31 18:37:19.399: E/AndroidRuntime(277):  at java.lang.reflect.Method.invoke(Method.java:521)
08-31 18:37:19.399: E/AndroidRuntime(277):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
08-31 18:37:19.399: E/AndroidRuntime(277):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
08-31 18:37:19.399: E/AndroidRuntime(277):  at dalvik.system.NativeStart.main(Native Method)

我正在尝试Android 2.2。这是一个问题吗?或者我错过了什么?有人可以指导我吗?

4

2 回答 2

0

Facebook SDK 需要最低 Android API 版本 15(Android 4.0.3 或 ICE CREAM SANDWICH)。

https://developers.facebook.com/docs/android

于 2016-01-11T10:22:44.920 回答
0

我正在尝试Android 2.2。这是一个问题吗?

是的,因为 FB 4.5.1 SDK 需要 API 9 才能运行(即 Android 2.3)。你可以在这里查看:https ://web.archive.org/web/20150821025823/https://developers.facebook.com/docs/android

需要 Android API 9。

它不能在以前的 Android 版本上运行,因为它使用新的 API 方法/字段(在您的情况下,异常是由访问Locale.ROOT仅在 API 9 中添加的常量引起的)。

从 4.6.0 版开始,FB SDK 开始需要 API 15: https ://developers.facebook.com/docs/android/upgrading-4.x

于 2016-09-23T13:59:34.010 回答