我正在尝试通过我的 android 应用程序在 facebook 上分享图像位图。我尝试了一些在谷歌上找到的代码,但没有成功,这是我的代码
shareButton = (ShareButton) findViewById(R.id.share_btn);
//share dialog
AlertDialog.Builder shareDialog = new AlertDialog.Builder(this);
shareDialog.setTitle("Share Miimoji");
shareDialog.setMessage("Share Miimoji to Facebook?");
shareDialog.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
//share the image to Facebook
ByteArrayOutputStream baos = new ByteArrayOutputStream();
mSelectedMiimoji.GetBitmap().compress(Bitmap.CompressFormat.PNG, 20, baos);
SharePhoto photo = new SharePhoto.Builder().setBitmap(mSelectedMiimoji.GetBitmap()).build();
SharePhotoContent content = new SharePhotoContent.Builder().addPhoto(photo).build();
shareButton.setShareContent(content);
counter = 1;
shareButton.performClick();
}
});
shareDialog.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
dialog.cancel();
}
});
shareDialog.show();
请帮帮我。 提前致谢。
最佳答案
尝试一次。
public void ShareDialog() {
Toast.makeText(Complete_Run_Activity.this, "Sharing to Facebook", Toast.LENGTH_SHORT).show();
if (shareDialog.canShow(SharePhotoContent.class)) {
SharePhoto photo = new SharePhoto.Builder()
.setBitmap(bitmap)
.setCaption("Hey... \nI earned by money by running/walking for the charity.")
.build();
SharePhotoContent content = new SharePhotoContent.Builder()
.addPhoto(photo)
.build();
shareDialog.show(content);
dialog1.dismiss();
}
}
还有
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
try {
callbackManager.onActivityResult(requestCode, resultCode, data);
}catch(Exception e){
e.printStackTrace();
}}
在oncreate方法中
FacebookSdk.sdkInitialize(getApplicationContext());
callbackManager = CallbackManager.Factory.create();
shareDialog = new ShareDialog(this);
shareDialog.registerCallback(callbackManager, new FacebookCallback<Sharer.Result>() {
@Override
public void onSuccess(Sharer.Result result) {
Log.e("RESSULT", "Success");
// getAndAddSlots();
}
@Override
public void onCancel() {
}
@Override
public void onError(FacebookException error) {
Log.e("RESSULT", "error=" + error.toString());
Toast.makeText(Complete_Run_Activity.this, "Unable to Share Image to Facebook.", Toast.LENGTH_SHORT).show();
}
});
关于android - 如何在 android 的 facebook 上分享图像位图?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43513124/