【发布时间】:2020-07-15 11:41:04
【问题描述】:
这是我的代码,问题是我不想发送图像,我只想打开 IG 应用程序。是的,该应用程序已安装,但仍未启动。
直到上周,这一切都很好。请帮忙。
Uri uri = Uri.parse("http://instagram.com/");
Intent insta = new Intent(Intent.ACTION_VIEW, uri);
insta.setPackage("com.instagram.android");
if (isIntentAvailable(insta)) {
this.startActivityForResult(insta, REQUEST_CODE_MY_PICK);
} else {
}
private boolean isIntentAvailable(Intent intent) {
final PackageManager packageManager = getPackageManager();
List<ResolveInfo> list = packageManager.queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY);
return list.size() > 0;
}
【问题讨论】:
-
如果清单中没有
<queries>元素,您的代码将无法在 Android 11 上运行。ACTION_VIEW不返回结果,所以startActivityForResult()不是一个好的选择。 Instagram 不需要支持不安全的http方案。而且,您可能应该记录一条消息和/或让用户知道您的else中发生了什么。 -
感谢@CommonsWare 的反馈.. 是的,我正在向其他用户提供反馈.. 我尝试了所有这些.. 仍然没有区别
标签: java android android-studio android-intent instagram