Facebook自定义共享按钮不起作用

时间:2016-07-20 12:05:25

标签: android facebook facebook-share

我正在开发一款Android应用。我正在将Facebook共享功能集成到我的应用程序中。但我的Facebook共享代码无效。我正在与一些文字内容分享照片。在分享之前,我必须将URL转换为位图。

我在异步任务中将URL转换为位图,因为它抛出错误我不使用它。但是当我点击分享按钮时,它什么也没做。

这是我点击分享按钮时触发的Facebook共享功能

 public void btnShareClick(View v)
    {
        if(facebookShareImageUrl!=null && facebookShareImageUrl.isEmpty()==false)
        {
            new AsyncTask<String,String,Bitmap>(){
                @Override
                protected void onPreExecute() {
                    super.onPreExecute();
                }

                @Override
                protected Bitmap doInBackground(String... params) {
                    return CommonHelper.ConvertUrlToBitmap(facebookShareImageUrl);
                }

                @Override
                protected void onPostExecute(Bitmap bitmap) {
                    super.onPostExecute(bitmap);
                    SharePhoto photo = new SharePhoto.Builder()
                            .setBitmap(bitmap)
                            .build();
                    SharePhotoContent content = new SharePhotoContent.Builder()
                            .addPhoto(photo)
                            .build();
                    ShareDialog shareDialog = new ShareDialog(ItemActivity.this);
                    shareDialog.show(ItemActivity.this, content);
                }
            }.execute(null,null,null);
        }

    }

这是我在清单

中的内容提供商
<provider android:authorities="com.facebook.app.FacebookContentProvider123435456656"
            android:name="com.facebook.FacebookContentProvider"
            android:exported="true" />

我正确设置了其他凭据,因为我的Facebook登录功能正常。为什么这不起作用?

我尝试测试此代码以及删除异步任务。但不仅仅是工作,UI甚至根本不会改变1 px。

 private void sharePhotoToFacebook(){
    Bitmap image = BitmapFactory.decodeResource(getResources(), R.mipmap.ic_launcher);
    SharePhoto photo = new SharePhoto.Builder()
            .setBitmap(image)
            .setCaption("Give me my codez or I will ... you know, do that thing you don't like!")
            .build();

    SharePhotoContent content = new SharePhotoContent.Builder()
            .addPhoto(photo)
            .build();

    ShareApi.share(content, null);

}

0 个答案:

没有答案
相关问题