コンテンツに応じて、Facebook の ShareDialog を使用してリンクや写真を共有しています。しかし、私は奇妙な問題を見ています。私のshareActionProviderでfacebookアイコンをクリックすると、最初に空白の投稿でShareDialogが開きます。次に、クリックしてアプリケーションに戻ると、表示したいリンク/写真コンテンツを含む ShareDialog が再度開きます。
これが私が共有するために使用しているコードです。
....
shareActionProvider.setOnShareTargetSelectedListener(new MyActionProvider.OnShareTargetSelectedListener() {
@Override
public boolean onShareTargetSelected(MyActionProvider source, Intent intent) {
// Recover selected application name for custom action handling
final String appName = intent.getComponent().getPackageName();
switch (appName) {
case "com.facebook.katana": // Facebook
ShareLinkContent content = new ShareLinkContent.Builder()
.setContentUrl(Uri.parse("https://developers.facebook.com"))
.setContentTitle("Check it out!")
.build();
shareDialog.show(content);
break;
....
}
誰もこの動作を見たことがありますか?
ありがとう!!
私が見ている両方の画面を、私が見ている順に添付しました。
編集
コードをさらに追加しています。
カスタムを使用して FB に共有していますShareActionProvider
(これは、Android ソース コードから正確にコピーされますsetOnShareTargetSelectedListener
。
私の活動でonCreate
:
FacebookSdk.sdkInitialize(getApplicationContext());
callbackManager = CallbackManager.Factory.create();
shareDialog = new ShareDialog(this);
shareDialog.registerCallback(
callbackManager,
shareCallback);
私がセットアップしたときShareActionProvider
:
Intent shareIntent = new Intent();
shareIntent.setAction(Intent.ACTION_SEND);
shareIntent.setType("text/plain");
if (shareActionProvider != null) {
shareActionProvider.setShareIntent(shareIntent);
//... this is before the setOnShareTargetSelected call ....