1

ビデオファイルをインテントで選択し、ビデオからメタデータを抽出しようとしています。Android:MediaMetadataRetrieverによって "java.lang.RuntimeException:setDataSource failed:status = 0x80000000"が発生しました

はしかし、私は例外で、次のユーザーとの報告からいくつかのエラーレポートを得た:ここ

Exception java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=12004, result=-1, data=Intent { dat=content://media/external/images/media/63141 flg=0x1 (has extras) }} to activity {my.app/my.app.VideoActivity}: 
java.lang.RuntimeException: setDataSource failed: status = 0x80000000 

は、メタデータをつかんコードです:

protected void onActivityResult(int requestCode, int resultCode, Intent intent) { 
    super.onActivityResult(requestCode, resultCode, intent); 
    Uri uri = intent.getData(); 
    MediaMetadataRetriever retriever = new MediaMetadataRetriever(); 
    try { 
     retriever.setDataSource(this, uri); // error occurs here 
    } catch (IllegalArgumentException e) { 
     e.printStackTrace();   
    } catch (SecurityException e) { 
     e.printStackTrace();   
    } 
} 

はなぜ例外が表示されず、それを修正する方法?より最近のAPIのバージョンでは、この方法では

+0

これについて進捗しましたか?まだ成功していない同じ問題を調査し、私のテストではKKデバイスでのみ発生します –

答えて

0

1つの問題は、エラーメッセージを、それがマニフェストの許可を必要とし、これは必ずしも明確フォームではありませんということです - この議論を参照してください。これはあなたのケースのために、次に問題になる場合https://code.google.com/p/android/issues/detail?id=35794

をIあなたのURIはローカルファイルと同じように見えるので、ファイルの読み書きの許可が必要になります。それがインターネットのURLだったら、あなたはインターネットの許可が必要です。

関連する問題