将视频分享到Google相册时出错

时间:2017-01-10 10:33:29

标签: android video

我设法创建了一个视频分享对话框,该对话框适用于所有其他应用,但不适用于Google相册。出于某种原因,Google相册会向我显示视频上传对话框,但在点击"上传"后,我得到:"错误,无法上传媒体"。

Intent shareIntent = new Intent(Intent.ACTION_SEND);
shareIntent.setType("video/mp4");
Uri uri = FileProvider.getUriForFile(context, SHARE_AUTHORITY, resultFile);
shareIntent.putExtra(Intent.EXTRA_STREAM, uri);

// Tried with these as well:
//shareIntent.putExtra(Intent.EXTRA_SUBJECT, "subject");
//shareIntent.putExtra(Intent.EXTRA_TEXT, "text");

activity.startActivity(Intent.createChooser(shareIntent, "Share Your Video"));

Facebook,Youtube,Gmail等都运转良好。我试过的视频就是这个:

http://www.sample-videos.com/video/mp4/720/big_buck_bunny_720p_1mb.mp4

只有Google相片不接受该视频,如果我共享同一视频,例如从Google云端硬盘到Google相册,它运行得很好。

Logcat没有显示任何内容。

是否有人与Google照片分享视频?

1 个答案:

答案 0 :(得分:0)

这是导致此失败的一个可能原因:它尝试通过URI访问您的应用程序专用的文件,但由于您未授予此权限而失败。以下是您的工作方式:

  1. 确保清单中的内容提供商具有参数android:grantUriPermissions="true";
  2. 通过调用shareIntent.setClipData设置剪辑数据。您的数据应包含一个包含您要打开的URI的项目。
  3. 致电shareIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION)
  4. 这将告诉Android查看剪辑数据中的URI并授予一次性权限以访问用户选择的应用程序。