有没有办法确认Android中的分享意图是成功还是失败? (例如,如果我分享Facebook帖子,我想知道它是否已成功发布或知道它是否被取消。)
以下是我用来分享的Android意图代码。目前,它会启动一个对话框,允许用户选择要分享的应用程序:
Intent shareIntent = new Intent(android.content.Intent.ACTION_SEND);
shareIntent.setType("text/plain");
shareIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, subject);
shareIntent.putExtra(android.content.Intent.EXTRA_TEXT, body);
activity.startActivity(Intent.createChooser(shareIntent, title));
答案 0 :(得分:9)
就个人而言,我正要说"使用startActivityForResult()
"并检查返回的内容。但是,正如read more here一样,它并不那么简单。如果用户取消了意图,则会返回相同的数字,就像意图已完成一样(对于大多数应用程序而言)。
最终,目前为了更简单的分享意图一般,您无法检查它是否成功。
答案 1 :(得分:0)
如果使用delayedDialog使用requestCode构建对话框,则onActivity检查请求代码和结果代码。为此,Facebook Sdk名称UiLifecycleHelper中有一个类
onCreate方法中的
uiHelper = new UiLifecycleHelper(this, null);
uiHelper.onCreate(savedInstanceState);
FacebookDialog fbShardialog = new FacebookDialog.ShareDialogBuilder(
MainActivity.this)
.setLink("http://www.claro.com.ar/")
.setPicture("imagepath").setRequestCode(12)
.build();
uiHelper.trackPendingDialogCall(fbShardialog.present());
OnActivityResult
if (requestCode == 12) {
if (resultCode == RESULT_OK) {
// show sucess message
}
else
//show failure message
}