Android意图打开Instagram发布视图
Posted
技术标签:
【中文标题】Android意图打开Instagram发布视图【英文标题】:Android Intent to open instagram posting view 【发布时间】:2020-09-08 12:07:49 【问题描述】:如何在发布模式下打开 Instagram 应用程序(所以我们在 Instagram 应用程序的主屏幕上单击加号后获得的视图相同)?我见过这样做的 android 应用程序,但是无法找到解释如何实现它的信息。
该代码适用于打开主视图:
Uri uri = Uri.parse("http://instagram.com/");
Intent likeIng = new Intent(Intent.ACTION_VIEW, uri);
likeIng.setPackage("com.instagram.android");
startActivity(likeIng);
也许还有一些其他的 uri 可以工作?
【问题讨论】:
***.com/a/23511180/10182897阅读以下答案 【参考方案1】:经过一番研究后发现,使用“instagram://share”进行深度链接可以打开所需的视图。
【讨论】:
【参考方案2】:只有在 Instagram 上有要分享的媒体时,您才能这样做:
try
String type = "image/*";
String filename = "/myPhoto.jpg";
String mediaPath = Environment.getExternalStorageDirectory() + filename;
Intent share = new Intent(Intent.ACTION_SEND);
share.setPackage("com.instagram.android");
share.setType(type);
File media = new File(mediaPath);
Uri uri = null;
share.putExtra(Intent.EXTRA_STREAM, uri);
startActivity(share);
catch (Exception e)
e.printStackTrace();
你可以创建一个假媒体来使用这个方法。
【讨论】:
【参考方案3】:只是为了扩展@Paavo 答案以在代码中显示答案。
Uri uri = Uri.parse("instagram://share");
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
intent.setPackage("com.instagram.android");
//Check that the user can open the intent, meaning they have the Instagram app installed
if (getPackageManager().resolveActivity(intent, 0) != null)
startActivity(intent);
else //User doesn't have app installed, handle however you want
throw new Resources.NotFoundException();
【讨论】:
以上是关于Android意图打开Instagram发布视图的主要内容,如果未能解决你的问题,请参考以下文章
使用android意图将带有图像的文本共享到instagram