Instagram的视频分享Android Intent

时间:2016-11-17 19:02:23

标签: android android-intent instagram

关注Instagram's video sharing Android Intent。琐碎编辑绕过选择器并直接启动Instagram。 See Gist相关代码和adb输出。

Kit Kat设备按预期工作,但是Nougat设备属于第20行,启动了Play商店,就像没有安装Instagram一样。

在两个设备上,ShareDialog的第14行startInstagram()确实提供了一个支持视频共享功能的应用程序,包括Instagram。

使用相同方法共享图像的相关代码在两个设备上都能正常工作。

更新1 :实施新的ContentProvider方法会导致Instagram在启动共享Intent时崩溃。我会测试分享视频到另一个社交网络,看看是否有效。

更新2 :结果显示Instagram并不适合

share.setDataAndType(contentUri, "video/*");

单独设置它们,使一切正常。

share.setType("video/*"); share.putExtra(Intent.EXTRA_STREAM, contentUri);

2 个答案:

答案 0 :(得分:1)

那似乎是FileUriExposedException。如果您的targetSdkVersion为24或更高,则无法在Uri.fromFile()或其他位置使用file或其他Uri Intent值(例如{{1}在“通知”上。

使用setSound()通过FileProvider

提供文件

答案 1 :(得分:1)

在Android Nougat上记录您的要点上的异常会显示问题:

  

android.os.FileUriExposedException:file:///storage/emulated/0/test.mp4通过ClipData.Item.getUri()

暴露在app之外

在Android Nougat上,您需要使用提供商:

{{1}}

请参阅:android.os.FileUriExposedException: file:///storage/emulated/0/test.txt exposed beyond app through Intent.getData()