通过SharePhotoContent使用SDK在Facebook中设置预填充的文本内容

通过SharePhotoContent使用SDK在Facebook中设置预填充的文本内容,facebook,sdk,Facebook,Sdk,我需要在Facebook的墙上同时发布文字和图片。为此,我不能使用意图共享,因为我也想共享文本。所以我实现了Facebook SDK。但我还是看不到墙上的文字内容/标题。这是我的密码 private void publishImage() { ArrayList<SharePhoto> sharePhotos = new ArrayList<>(); int imageFolderSize; File imageFolder = new Fil

我需要在Facebook的墙上同时发布文字和图片。为此,我不能使用意图共享,因为我也想共享文本。所以我实现了Facebook SDK。但我还是看不到墙上的文字内容/标题。这是我的密码

 private void publishImage() {
    ArrayList<SharePhoto> sharePhotos = new ArrayList<>();
    int imageFolderSize;
    File  imageFolder = new File(getActivity().getExternalCacheDir(), "attachments/images");
    if( imageFolder.exists()) {
        imageFolderSize = imageFolder.listFiles().length;
        ArrayList<File> attachments = new ArrayList<>();
        if (imageFolder.exists()) {
            Collections.addAll(attachments, imageFolder.listFiles());
        }
        if (imageFolderSize > 0) {
            for (int i = 0; i < attachments.size(); i++) {
                File file = attachments.get(i);
                if (file.exists()) {
                    if (file.getAbsolutePath().endsWith(".png")) {
                        try {
                            SharePhoto photo = new SharePhoto.Builder().setBitmap(BitmapFactory.decodeFile(file.getAbsolutePath()))
                                    .setCaption("Welcome To Facebook Photo Sharing on steroids!")
                                    .build();
                            sharePhotos.add(photo);
                        }catch (Exception e){
                            RMLog.debug("Execp: e"+e.toString());
                        }
                    }
                }
            }
        }
    }
    SharePhotoContent scontent = new SharePhotoContent.Builder().addPhotos(sharePhotos ).build();
    if(ShareDialog.canShow(SharePhotoContent.class))
    {
        shareDialog.show(scontent);
        Toast.makeText(getActivity(), "Succsesfully posted on your wall",
                Toast.LENGTH_LONG).show();
    }
}
private void publishImage(){
ArrayList sharePhotos=新建ArrayList();
int-imageFolderSize;
File imageFolder=新文件(getActivity().getExternalCacheDir(),“附件/图像”);
如果(imageFolder.exists()){
imageFolderSize=imageFolder.listFiles().length;
ArrayList attachments=新的ArrayList();
如果(imageFolder.exists()){
Collections.addAll(附件,imageFolder.listFiles());
}
如果(imageFolderSize>0){
对于(int i=0;i
问题出在哪里?运行代码时会发生什么?您是否收到错误消息?不允许您预先填充此消息-用户必须键入此消息。你需要去看看Facebook的-2.3是这里的重点,“不要在文章标题、评论、消息或用户消息参数中预先填充某人未创建的内容,即使此人可以在共享之前编辑或删除内容。您可以使用共享对话框在文章中预先填充单个哈希标记,但不要预填充某人未通过API创建的任何内容。”嗨..SuperPeanut,我没有收到任何错误消息。发布的图像显示良好。问题是在墙上显示标题。我看到一些开发人员建议我使用facebook sdk来显示文本内容。但我在这里使用了他们所说的sdk,但什么也没有发生。谢谢你…CBroe。@GraceVenkat嗨,我也有一个问题想解决如果你解决了这个问题,请与我们分享。问题是什么?当你运行代码时会发生什么?你会收到错误消息吗?你不允许预先填充这个-用户必须输入。你需要阅读Facebook的-2.3是这里的相关点,“不要在文章标题、评论、消息或用户消息参数中预先填充某人未创建的内容,即使此人可以在共享之前编辑或删除内容。您可以使用共享对话框在文章中预先填充单个哈希标记,但不要预填充某人未通过API创建的任何内容。”嗨..SuperPeanut,我没有收到任何错误消息。发布的图像显示良好。问题是在墙上显示标题。我看到一些开发人员建议我使用facebook sdk来显示文本内容。但我在这里使用了他们所说的sdk,但什么也没有发生。谢谢你…CBroe。@GraceVenkat嗨,我也有一个问题想解决重新上传带有墙文本的照片。如果您已解决此问题,请与我们共享。