首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Instagram的视频分享Android的意图

Instagram的视频分享Android的意图
EN

Stack Overflow用户
提问于 2016-11-17 19:02:23
回答 2查看 2.1K关注 0票数 2

跟踪Instagram的视频分享Android的意图。简单的编辑可以绕过选择器,直接启动Instagram。见Gist的相关代码和亚行输出。

Kit Kat设备按预期工作,但是本体设备落入Line#20,启动Play Store,就好像Instagram没有安装一样。

在这两款设备上,ShareDialog的Line#14的startInstagram()都提供了视频共享功能应用的选择,包括Instagram。

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

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

更新2:原来Instagram对

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

把它们分开放置,把所有的东西都安排好。

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

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-11-17 19:23:31

在Android上记录gist上的异常会发现问题:

file:///storage/emulated/0/test.mp4 android.os.FileUriExposedException:通过ClipData.Item.getUri()暴露于app之外的ClipData.Item.getUri

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

代码语言:javascript
复制
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
    intent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
    Uri contentUri = FileProvider.getUriForFile(getContext(), "com.your.package.fileProvider", newFile);
    intent.setDataAndType(contentUri, type);
}

请参阅:file:///storage/emulated/0/test.txt android.os.FileUriExposedException:通过Intent.getData()暴露于app之外的Intent.getData

票数 2
EN

Stack Overflow用户

发布于 2016-11-17 19:22:49

这似乎是一个FileUriExposedException。如果您的targetSdkVersion是24或更高,则不能在Intent或其他地方使用Uri.fromFile()或其他file Uri值(例如,“通知”上的setSound() )。

使用FileProvider通过ContentProvider提供文件。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40662994

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档