Sharing on Facebook from Android using setContentUrl()

佐手、 提交于 2019-12-04 06:11:42

问题


I am having some trouble while trying to share content from my app into Facebook. I am using the following code to do it:

facebookButton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            if(ShareDialog.canShow(ShareLinkContent.class)){
                ShareLinkContent linkContent=new ShareLinkContent.Builder()
                        .setContentUrl(Uri.parse(imageUrls.get(0)))
                        .build();
                shareDialog.show(linkContent, ShareDialog.Mode.WEB);

            }
        }
    });

My images are stored on Firebase Storage and I am able to post on Facebook as well but the title and description are both set to firebasestorage.googleapis.com like this linked image: screenshot of share post

Note : The setContentDescription() and setContentTitle() and setImageUrl() are all deprecated. Is there a way to set the title,and description of the shared post?


回答1:


FadyDev, I don't know if you've already resolved your problem but this is what I do in place of deprecated codes:

// Builds the object    
   ShareOpenGraphObject object = new ShareOpenGraphObject.Builder()
            .putString("fb:app_id", my_app_ID)
            .putString("og:url", link_to_site)
            .putString("og:type", objectType)
            .putString("og:title", contentTitle)
            .putString("og:description", contentDescription)
            .putString("og:image", imageLink)
            .build();

// Builds the action
        ShareOpenGraphAction action = new ShareOpenGraphAction.Builder()
                .setActionType(actionName)
                .putObject(objectName, object)
                .build();

// Create the openGraphContent
        ShareOpenGraphContent openGraphContent = new ShareOpenGraphContent.Builder()
                .setPreviewPropertyName(objectName)
                .setAction(action)
                .build();

        return openGraphContent;

Look in the facebook doc for what action you want to use and there corresponding object type and required parameters.

https://developers.facebook.com/docs/sharing/opengraph/using-actions https://developers.facebook.com/docs/reference/opengraph

Hope this helps!



来源:https://stackoverflow.com/questions/45740489/sharing-on-facebook-from-android-using-setcontenturl

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!