The project encountered the call library to make a picture of the selection, because can not be actively updated in a timely manner to implement code calls to implement proactive and timely updates.
Nonsense not much brush, look at the code.
Way one, send a broadcast,
Sendbroadcast (New Intent (Intent.action_media_scanner_scan_file,uri.parse ("file://" +filesd_file));
Mode two, through the Mediascannerconnection class
Mediascannerconnection.scanfile (Context, New string[]{filesd_file.tostring ()}, NULL, NULL);
Way three, also through the Mediascannerconnection class
Mediascannerconnection msc=new mediascannerconnection (context,new mediascannerconnectionclient () {
@Override
public void onmediascannerconnected () {
TODO auto-generated Method Stub
}
@Override
public void onscancompleted (String path, Uri Uri) {
TODO auto-generated Method Stub
}
});
Msc.connect ();
try {
Thread.Sleep (1000);
} catch (Interruptedexception e) {
TODO auto-generated Catch block
E.printstacktrace ();
}
URL url = null;
try {
url = Filesd_file.tourl ();
} catch (Malformedurlexception e) {
E.printstacktrace ();
}
Mimetypemap Mtm=mimetypemap.getsingleton ();
Msc.scanfile (Filesd_file.tostring (), Mtm.getmimetypefromextension (Mtm.getfileextensionfromurl (url.toString ())) ;
The sentence above can be, the following sentence can also be suitable for this method (color marked).
Msc.scanfile (Filesd_file.getabsolutepath (), null);
Msc.disconnect ();
Proactively notify the Android system library for updates