Android MediaScannerConnection扫描文件扫描程序正在崩溃
当我运行以下代码行时:Android MediaScannerConnection扫描文件扫描程序正在崩溃,android,Android,当我运行以下代码行时: MediaScannerConnection scanner = new MediaScannerConnection( this, null ); scanner.connect(); scanner.scanFile( szFinalFileName, null ); //<---crash here 有人知道为什么这不起作用吗?我能做些什么来修复它 提前谢谢:-我想出来了 代码如下: final String szFile = szFinal
MediaScannerConnection scanner = new MediaScannerConnection( this, null );
scanner.connect();
scanner.scanFile( szFinalFileName, null ); //<---crash here
有人知道为什么这不起作用吗?我能做些什么来修复它
提前谢谢:-我想出来了
代码如下:
final String szFile = szFinalFileName;
m_pScanner = new MediaScannerConnection(this,
new MediaScannerConnectionClient() {
public void onMediaScannerConnected() {
m_pScanner.scanFile(szFile, null /*mimeType*/);
}
public void onScanCompleted(String path, Uri uri) {
if (path.equals(szFile)) {
MugMashView.this.runOnUiThread(new Runnable() {
public void run() {
Toast
.makeText(getApplicationContext(),
"Image now available in Home > Pictures",
Toast.LENGTH_SHORT)
.show();
}
});
m_pScanner.disconnect();
}
}
});
m_pScanner.connect();
我想出来了
代码如下:
final String szFile = szFinalFileName;
m_pScanner = new MediaScannerConnection(this,
new MediaScannerConnectionClient() {
public void onMediaScannerConnected() {
m_pScanner.scanFile(szFile, null /*mimeType*/);
}
public void onScanCompleted(String path, Uri uri) {
if (path.equals(szFile)) {
MugMashView.this.runOnUiThread(new Runnable() {
public void run() {
Toast
.makeText(getApplicationContext(),
"Image now available in Home > Pictures",
Toast.LENGTH_SHORT)
.show();
}
});
m_pScanner.disconnect();
}
}
});
m_pScanner.connect();
另一种方法是广播意图并让系统处理它 e、 g
另一种方法是广播意图并让系统处理它 e、 g
public void scanFile(File downloadedFile){
Uri contentUri = Uri.fromFile(downloadedFile);
Intent mediaScanIntent = new Intent("android.intent.action.MEDIA_SCANNER_SCAN_FILE");
mediaScanIntent.setData(contentUri);
mContext.sendBroadcast(mediaScanIntent);
}