2016-08-18 3 views
0

Android TV에서 비디오 플레이어를 개발하려고합니다. Android 미디어 제공 업체를 통해 USB 장치에서 미디어 파일을 가져올 수 없습니다. MediaScannerConnectionClient를 사용하여 USB 장치 디렉터리를 검사하려고했지만 작동하지 않는 것 같습니다. USB 미디어 파일을 미디어 제공 업체에 저장하는 방법과 액세스 방법을 알려주시겠습니까? 기능을 추가미디어 파일을 MediaStore에 저장하는 방법

답변

0

시도 :

public class MediaScannerWrapper implements MediaScannerConnectionClient { 

    private MediaScannerConnection mConnection; 
    private String mPath; 
    private String mMimeType; 

    public MediaScannerWrapper(Context ctx, String filePath, String mime){ 
     mPath = filePath; 
     mMimeType = mime; 
     mConnection = new MediaScannerConnection(ctx, this); 
    } 

    public void scan(){ 
     mConnection.connect(); 
    } 

    @Override 
    public void onMediaScannerConnected() { 
     mConnection.scanFile(mPath, mMimeType); 
     Log.d(getClass().getName(), "Media file scanned: "+mPath); 
    } 

    @Override 
    public void onScanCompleted(String arg0, Uri arg1) { 
    } 

} 

다음 시도 :

new MediaScannerWrapper(ctx, mostRecentRecording.getFullPath(), "audio/*").scan(); 
ctx.sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED, Uri.parse("file://" + PathsHandler.getInstance().getRecordingsDirectory()))); 
+0

MediaScannerWrapper의 두 번째 매개 변수() : 문자열적인 filePath는이 경로가 디렉토리가 될 수 있습니까? 제 상황에서는 "/ mnt/sda/sda4"(USB 장치 디렉토리) 여야합니다. 그리고 상황에 따라 Uri을 sendbroadcast 할 때 두 번째 매개 변수에 대해 전혀 알지 못합니다. – user6687472

+0

내 플랫폼은 Android 4.4이며 브로드 캐스트를 전송할 수 없습니다. MEDIA_MOUNTED – user6687472

관련 문제