2015-11-23 2 views
1

J'envoie une intention de balayage de récepteur de radiodiffusion de médias afin que que l'image serait « connue » par le système:Comment vérifier si le fichier a été numérisé par le récepteur de diffusion multimédia

Intent mediaScanIntent = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE); 
File f = new File(path); 
Uri contentUri = Uri.fromFile(f); 
mediaScanIntent.setData(contentUri); 
getActivity().sendBroadcast(mediaScanIntent); 

Qu'est-ce le moyen d'attendre que l'analyse soit terminée? Un auditeur? Merci

+0

Qu'en est 'ACTION_MEDIA_SCANNER_FINISHED' –

Répondre

1

Dans votre cas, vous devez utiliser MediaScannerConnection.scanFile qui vous donne un rappel pour écouter l'action de numérisation terminée par la méthode OnScanCompletedListener.

Par exemple

MediaScannerConnection.scanFile(
       getApplicationContext(), 
       new String[]{file.getAbsolutePath()}, 
       null, 
       new OnScanCompletedListener() { 
        @Override 
        public void onScanCompleted(String path, Uri uri) { 
         Log.v(TAG, 
          "file " + path + " was scanned seccessfully: " + uri); 
        } 
       });