如何分享视频网址到Android中的所有应用程序(什么是应用程序,Facebook等)? 通过应用以下代码,我面临"文件格式不支持错误"?
enter code here
ContentValues content = new ContentValues(4);
content.put(MediaStore.Video.VideoColumns.DATE_ADDED,
System.currentTimeMillis() / 1000);
content.put(MediaStore.Video.Media.MIME_TYPE, "video/mp4");
content.put(MediaStore.Video.Media.DATA, "http://www.demonuts.com/Demonuts/smallvideo.mp4");
ContentResolver resolver = getBaseContext().getContentResolver();
Uri uri = resolver.insert(MediaStore.Video.Media.EXTERNAL_CONTENT_URI, content);
Intent sharingIntent = new Intent(android.content.Intent.ACTION_SEND);
sharingIntent.setType("video/*");
sharingIntent.putExtra(android.content.Intent.EXTRA_SUBJECT,"Title");
sharingIntent.putExtra(android.content.Intent.EXTRA_STREAM,uri);
startActivity(Intent.createChooser(sharingIntent,"share:"));
答案 0 :(得分:0)
首先,the documentation指出EXTRA_STREAM
的值应该是Uri
,其content:
方案,这意味着它指向ContentProvider
。实施ACTION_SEND
的应用可能支持其他方案,但他们不需要,特别是他们不必支持http
。
其次,使用真实的MIME类型,而不是通配符。您提供内容;你应该知道它的MIME类型。
第三,正如其他人在评论中指出的那样,http://www.demonuts.com/Demonuts/smallvideo.mp4
不是文件系统路径。这是一个URL。使用Uri.parse("http://www.demonuts.com/Demonuts/smallvideo.mp4")
以Uri
。