2017-07-01 72 views
0

我必须选择在选配意图视频或图像这样得到onActivityResult

Intent getIntent = new Intent(Intent.ACTION_GET_CONTENT); 
       getIntent.setType("image/* video/*"); 

       Intent pickIntent = new Intent(Intent.ACTION_PICK); 
       pickIntent.setType("image/* video/*"); 

Intent chooserIntent = Intent.createChooser(getIntent, "Select Media"); 
       chooserIntent.putExtra(Intent.EXTRA_INITIAL_INTENTS, new Intent[] {pickIntent}); 

       startActivityForResult(chooserIntent, 1); 

然后我想选择的文件的元数据onActivityResult() 一样的高度和宽度以及视频的长度和媒体元数据大小

回答

1

使用此来获得您的所有要求。

MediaMetadataRetriever ret = new MediaMetadataRetriever(); 
Bitmap bmp = null;  

try 
{ 
    ret.setDataSource("<<--Your retrieved data file-->>"); 
    bmp = ret.getFrameAtTime(); 
    videoHeight=bmp.getHeight(); 
    videoWidth=bmp.getWidth(); 
    videoSize = bmp.getAllocationByteCount() 
} 

希望这有帮助,并让我知道是否有任何问题出现。

+0

它不会得到这个错误 'java.lang.RuntimeException:传递结果失败ResultInfo {who = null,request = 1,result = -1,data = Intent {dat = content:// media/external/images/media/57}} to activity {com.ts.tkllm/com.ts.tkllm.Chat}:java.lang.RuntimeException:setDataSource failed:status = 0x80000000' –

+0

您是否提供了正确的数据文件路径,通过onActivityResult()? –

+0

感谢您为视频 工作,我用drewnoakes:metadata-extractor:2.10.1为图像 –

相关问题