我正在开发一款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);
}