2013-11-15 5 views
8

私は写真をプログラムで移動した後にギャラリーを更新するにはどうすればいいですか?

File oldfile= new File(originalImagePath);    
File newfile=new File(newImagePath); 
boolean d=oldfile.renameTo(newfilee); 
if(d){ 

sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED, 
Uri.parse("file://" + newfilee.getPath()))); 
} 

写真が正常に新しいディレクトリに移動し、次のコードを使用して別のディレクトリ上から写真を移動していますが、それは写真をより多くの回数では約30秒後に、ギャラリー、ギャラリー更新情報を更新するために、あるとき、あまりにも長い時間がかかりますかmore sendBroadcastを使ってファイルを更新するロジックが間違っていると私は何をすべきでしょうか?

ありがとうございました。

答えて

18

ギャラリー

try { 

    getContentResolver().delete(); 

    } catch (Exception e) { 
     e.printStackTrace(); 
    } 
+0

ニースソリューション:)挿入した画像のURIを持つ – Hasnain

+1

こんにちは、おかげで、交換することができUri.parse(....)から削除する: '' '' javaの – EugenUngurean

+0

ようこそ、はい、あなたはまた、挿入された画像のURIを渡すことができます。getActivity()。getContentResolver()。notifyChange(uri、null); –

1
if (Build.VERSION.SDK_INT < 19) 
    mContext.sendBroadcast(new Intent(
      Intent.ACTION_MEDIA_MOUNTED, 
      Uri.parse("file://" 
        + Environment.getExternalStorageDirectory()))); 
else { 
    MediaScannerConnection 
      .scanFile(
        mContext, 
        new String[]{imageFile.toString()}, 
        null, 
        new MediaScannerConnection.OnScanCompletedListener() { 
         public void onScanCompleted(
           String path, Uri uri) { 
          Log.i("ExternalStorage", "Scanned " 
            + path + ":"); 
          Log.i("ExternalStorage", "-> uri=" 
            + uri); 
         } 
        }); 
} 
+1

私は、なぜ、どのように役立つかについての簡単な説明を追加すると便利だと思います。 – Challe

+0

私のために働く..ありがとう!! :-) –

関連する問題