시도 :
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())));
MediaScannerWrapper의 두 번째 매개 변수() : 문자열적인 filePath는이 경로가 디렉토리가 될 수 있습니까? 제 상황에서는 "/ mnt/sda/sda4"(USB 장치 디렉토리) 여야합니다. 그리고 상황에 따라 Uri을 sendbroadcast 할 때 두 번째 매개 변수에 대해 전혀 알지 못합니다. – user6687472
내 플랫폼은 Android 4.4이며 브로드 캐스트를 전송할 수 없습니다. MEDIA_MOUNTED – user6687472