Android FacebookGraphObjectException:Can';t从java.lang.string创建集合

Android FacebookGraphObjectException:Can';t从java.lang.string创建集合,android,facebook,Android,Facebook,在我的android应用程序中,我试图共享一个开放的图形,包括一个对象和一个动作。 在我的facebook应用程序中,我添加了一个故事:action=“take”和object=“photo”(这样可以吗?) 当我尝试将图像添加到OG中的对象时,会出现上述错误 这是我的代码: private void shareWithFacebookOpenGraph(String pathToImage) { Log.i("SHARE", "1. share with OpenGraph");

在我的android应用程序中,我试图共享一个开放的图形,包括一个对象和一个动作。
在我的facebook应用程序中,我添加了一个故事:
action=“take”
object=“photo”
(这样可以吗?)

当我尝试将图像添加到OG中的对象时,会出现上述错误

这是我的代码:

private void shareWithFacebookOpenGraph(String pathToImage) {
    Log.i("SHARE", "1. share with OpenGraph");  
    OpenGraphObject photo = OpenGraphObject.Factory.createForPost("myapp:photo");
    photo.setProperty("title", "MyApp Photo");
    photo.setProperty("image", "http://play.google.com/to_my_app_launcher_icon");
    photo.setProperty("url", "http://play.google.com/to_my_app");
    photo.setProperty("description", "Image taken with myApp for Android");

    List<File> files = new ArrayList<File>();
    files.add(new File(pathToImage));

    OpenGraphAction action = GraphObject.Factory.create(OpenGraphAction.class);
    action.setProperty("photo", photo);

    FacebookDialog shareDialog = new FacebookDialog.OpenGraphActionDialogBuilder(this, action, "myapp:take", "photo")
        .setImageAttachmentFilesForObject("photo", files, true) // **Error**
        .build();
    uiHelper.trackPendingDialogCall(shareDialog.present());
}
我做错了什么?

也许我搞乱了故事中的一些线索,facebook教程太糟糕了

您已经在照片对象中设置了图像。如果以后要添加图像作为附件,请删除该行。

哦,thanx,我明白了。但是我可以为动作添加一个图像(例如,我的应用程序的启动图标)和另一个对象图像(用户拍摄的照片)吗?如果我使用
.setImageAttachmentFilesForAction(files,true)
我会得到“错误共享图片:null”错误共享图片:null是由于清单中缺少NativeAppCallContentProvider造成的。无论如何,我仍然无法按照我想要的方式布局我的开放图形,请参见
08-12 04:26:48.780: mypackage.myapp: fatal error : Can't create Collection from java.lang.String
08-12 04:26:48.780: com.facebook.FacebookGraphObjectException: Can't create Collection from java.lang.String
08-12 04:26:48.780:     at com.facebook.model.GraphObject$Factory.coerceValueToExpectedType(GraphObject.java:371)
08-12 04:26:48.780:     at com.facebook.model.GraphObject$Factory$GraphObjectProxy.proxyGraphObjectGettersAndSetters(GraphObject.java:675)
08-12 04:26:48.780:     at com.facebook.model.GraphObject$Factory$GraphObjectProxy.invoke(GraphObject.java:523)
08-12 04:26:48.780:     at $Proxy2.getImage(Native Method)
08-12 04:26:48.780:     at com.facebook.widget.FacebookDialog$OpenGraphDialogBuilderBase.updateObjectAttachmentUrls(FacebookDialog.java:1386)
08-12 04:26:48.780:     at com.facebook.widget.FacebookDialog$OpenGraphDialogBuilderBase.setImageAttachmentFilesForObject(FacebookDialog.java:1364)
08-12 04:26:48.780:     at com.facebook.widget.FacebookDialog$OpenGraphActionDialogBuilder.setImageAttachmentFilesForObject(FacebookDialog.java:1)
08-12 04:26:48.780:     at mypackage.myactivity.shareWithFacebookOpenGraph(EnhancedCameraPreviewActivity.java:3247)
08-12 04:26:48.780:     at mypackage.myactivity.access$155(EnhancedCameraPreviewActivity.java:3224)
08-12 04:26:48.780:     at mypackage.myactivity$89.onClick(EnhancedCameraPreviewActivity.java:3184)
08-12 04:26:48.780:     at android.view.View.performClick(View.java:4438)
08-12 04:26:48.780:     at android.view.View$PerformClick.run(View.java:18422)
08-12 04:26:48.780:     at android.os.Handler.handleCallback(Handler.java:733)
08-12 04:26:48.780:     at android.os.Handler.dispatchMessage(Handler.java:95)
08-12 04:26:48.780:     at android.os.Looper.loop(Looper.java:136)
08-12 04:26:48.780:     at android.app.ActivityThread.main(ActivityThread.java:5017)
08-12 04:26:48.780:     at java.lang.reflect.Method.invokeNative(Native Method)
08-12 04:26:48.780:     at java.lang.reflect.Method.invoke(Method.java:515)
08-12 04:26:48.780:     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
08-12 04:26:48.780:     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
08-12 04:26:48.780:     at dalvik.system.NativeStart.main(Native Method)