Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 官方Facebook示例崩溃(GraphApiSample)_Android_Facebook_Facebook Android Sdk_Android Facebook - Fatal编程技术网

Android 官方Facebook示例崩溃(GraphApiSample)

Android 官方Facebook示例崩溃(GraphApiSample),android,facebook,facebook-android-sdk,android-facebook,Android,Facebook,Facebook Android Sdk,Android Facebook,我开始使用facebook-android-sdk-3.5.2。 SDK项目还包含使用api的varius示例,如: HelloFacebookSample:一个简单的活动,你可以登录并做一些事情,效果很好 接下来,我想尝试下一个示例,名为: 图形示例,我有问题。 启动此应用程序后,出现以下错误:(Logcat): 我明白了: 原因:java.lang.IllegalArgumentException:上下文和应用程序ID必须为非null 好的,但我没有改变代码中的任何东西应该是工作,对

我开始使用facebook-android-sdk-3.5.2。

SDK项目还包含使用api的varius示例,如:

  • HelloFacebookSample:一个简单的活动,你可以登录并做一些事情,效果很好
接下来,我想尝试下一个示例,名为:

  • 图形示例,我有问题。
启动此应用程序后,出现以下错误:(Logcat):

我明白了:

原因:java.lang.IllegalArgumentException:上下文和应用程序ID必须为非null

好的,但我没有改变代码中的任何东西应该是工作,对吗?

我试图:

  • 删除项目,然后导入

  • 删除项目,并从现有代码中添加新的android项目

  • 清理我的项目

  • 删除facebook sdk库依赖项并重新导入,然后再次清理

所有这些之后的结果都是一样的

如果有人熟悉这个问题,请告诉我。帮帮我

E-D-it:

出于某种原因,此官方facebook示例不包含appId。
谢谢你的建议

尝试在
strings.xml
中设置
app\u id
,或者添加它。这里的入门教程中也提到了这一点:

另一个步骤: 如果您没有(或想要)存储在strings.xml中的facebook应用程序id(例如,您可能通过互联网动态接收facebook应用程序id),请在AndroidManifest.xml中创建一个名为
com.facebook.sdk.ApplicationId
和值为
@string/app_id
的元数据,然后您可以调用此方法来激活。。。
AppEventsLogger.activateApp(上下文,字符串facebookAppId)

您应该在活动的
onResume()
方法中调用此函数:

@覆盖
受保护的void onResume(){
super.onResume();
AppEventsLogger.activateApp(…);

}

尝试在strings.xml中设置app_id或添加它作为答案,我会接受,谢谢。当前的GraphApiSampleActivity已经在类中定义了app_id。我使用了SDK的3.6.0版。调用该方法的最佳位置是哪里?您应该将其添加到活动的
onResume()
方法中。我已经用一个代码片段更新了我的答案。我有一个applicationID,并且我按照步骤(将它放在strings.xml和manifest.xml中)操作,但仍然得到了错误。知道为什么吗?同时,你的建议允许我继续开发我的应用程序(给你+1)HiyaZvi,不确定,真的。您最好用适当的代码和堆栈跟踪发布一个新问题。:-)
11-11 15:22:40.008: E/AndroidRuntime(14048): FATAL EXCEPTION: main
11-11 15:22:40.008: E/AndroidRuntime(14048): java.lang.RuntimeException: Unable to resume activity {com.facebook.samples.graphapi/com.facebook.samples.graphapi.GraphApiSampleActivity}: java.lang.IllegalArgumentException: Both context and applicationId must be non-null
11-11 15:22:40.008: E/AndroidRuntime(14048):    at android.app.ActivityThread.performResumeActivity(ActivityThread.java:2621)
11-11 15:22:40.008: E/AndroidRuntime(14048):    at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:2649)
11-11 15:22:40.008: E/AndroidRuntime(14048):    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2122)
11-11 15:22:40.008: E/AndroidRuntime(14048):    at android.app.ActivityThread.access$700(ActivityThread.java:134)
11-11 15:22:40.008: E/AndroidRuntime(14048):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1218)
11-11 15:22:40.008: E/AndroidRuntime(14048):    at android.os.Handler.dispatchMessage(Handler.java:99)
11-11 15:22:40.008: E/AndroidRuntime(14048):    at android.os.Looper.loop(Looper.java:137)
11-11 15:22:40.008: E/AndroidRuntime(14048):    at android.app.ActivityThread.main(ActivityThread.java:4867)
11-11 15:22:40.008: E/AndroidRuntime(14048):    at java.lang.reflect.Method.invokeNative(Native Method)
11-11 15:22:40.008: E/AndroidRuntime(14048):    at java.lang.reflect.Method.invoke(Method.java:511)
11-11 15:22:40.008: E/AndroidRuntime(14048):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1007)
11-11 15:22:40.008: E/AndroidRuntime(14048):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:774)
11-11 15:22:40.008: E/AndroidRuntime(14048):    at dalvik.system.NativeStart.main(Native Method)
11-11 15:22:40.008: E/AndroidRuntime(14048): Caused by: java.lang.IllegalArgumentException: Both context and applicationId must be non-null
11-11 15:22:40.008: E/AndroidRuntime(14048):    at com.facebook.AppEventsLogger.activateApp(AppEventsLogger.java:308)
11-11 15:22:40.008: E/AndroidRuntime(14048):    at com.facebook.AppEventsLogger.activateApp(AppEventsLogger.java:292)
11-11 15:22:40.008: E/AndroidRuntime(14048):    at com.facebook.samples.graphapi.GraphApiSampleActivity.onResume(GraphApiSampleActivity.java:76)
11-11 15:22:40.008: E/AndroidRuntime(14048):    at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1199)
11-11 15:22:40.008: E/AndroidRuntime(14048):    at android.app.Activity.performResume(Activity.java:5121)
11-11 15:22:40.008: E/AndroidRuntime(14048):    at android.app.ActivityThread.performResumeActivity(ActivityThread.java:2611)