如何添加一个分享到Instagram故事的选项?

问题描述 投票:2回答:2

背景 在我的Android应用中,用户可以将生成的图像共享给其他应用。它使用ACTION_SEND意图很好地工作。 许多用户已经问过为什么他们不能直接分享到Instagram的故事。

最初我认为Instagram不支持接收故事的Intent(在某种程度上是正确的)。今天我搜索了它,并根据this documentation,分享到Instagram故事,必须使用单独的意图com.instagram.share.ADD_TO_STORY。我试过了,它工作正常。

问题: 如何保留两个选项?

我考虑了很多,并提出了以下选择:

1)有两个单独的按钮。它会起作用,但看起来/感觉不好。

2)让我的应用程序接受ACTION_SEND意图,将其命名为Share to Instagram Story,并将意图重定向到com.instagram.share.ADD_TO_STORY意图。原则上,提出代理意图。 它会工作,看起来/感觉很好,但我不知道它是否允许(合法等),如果用户没有安装Instagram,我可以禁用意图。

3)将'com.instagram.share.ADD_TO_STORY'添加到ACTION_SEND发布的app选择器中。这将是理想的,但我不知道该怎么做。

android android-intent instagram
2个回答
3
投票

如果要向Intent添加多个操作并创建一个选择器,请查看此示例:

Intent viewIntent = new Intent(Intent.ACTION_VIEW);
Intent editIntent = new Intent(Intent.ACTION_EDIT);
viewIntent.setDataAndType(uri, type);
editIntent.setDataAndType(uri, type);
Intent chooserIntent = Intent.createChooser(editIntent, "Open in...");
chooserIntent.putExtra(Intent.EXTRA_INITIAL_INTENTS, new Intent[] { viewIntent });
startActivity(chooserIntent);

更新:这是你的答案的好方法。 How to make an intent with multiple actions


0
投票

我尝试了与Facebook的官方文档相同的方法,然后在Huawai P9 LiteHuawai P20 LiteSamsung S8上进行了测试 - 它仅用于Samsung S8,原因不明(对我而言)。我放弃了它,显然,它不适用于大多数手机。

© www.soinside.com 2019 - 2024. All rights reserved.