我有一个可以生成视频的应用。生成视频文件后,我使用MediaScanner获取最近创建的视频的Uri。比我在ACTION_VIEW意图中传递这个Uri。在某些设备上,这可以正常工作,但在其他设备上,随后使用2个不同视频的激活会产生混合 - 第二个ACTION_VIEW会导致Gallery应用再次播放第一个视频!
我们还有一个"分享"应用程序中的选项,使用相同的Uri生成ACTION_SEND意图。这个意图的接收者似乎都没有重复这种错误的行为。
这就是我激活MediaScanner的方式:
MediaScannerConnection.scanFile(context, new String[] { path }, null,
new MediaScannerConnection.OnScanCompletedListener() {
public void onScanCompleted(String path, Uri uri) {
result = uri;
scanFinished.signal();
}
});
这就是我创建视图意图的方式:
Intent viewIntent = new Intent(Intent.ACTION_VIEW);
viewIntent.setDataAndType(uri, "video/*");
感谢任何提示