2016-03-21 12 views
1

私はAndroidスタジオでAndroidアプリケーションを作成しています。スタジオで写真を撮ってギャラリーの新しいフォルダに保存することができます。現在のところ、アプリケーションは画像をうまく撮りますが、画像をギャラリーの新しい「SOC」フォルダに保存しません。私は何のエラーも出ていないので、なぜ画像を保存していないのか分かりません。どんな助けもありがとう。ギャラリーに画像を保存する

static final int REQUEST_IMAGE_CAPTURE = 1; 
private static final int CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE = 0; 
public void onClickbtnCamera(View v) 
{ 
    Intent imageIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); 
    String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss").format(new Date()); 
    Uri uriSavedImage=Uri.fromFile(new File("/storage/emulated/0/DCIM/SOC","QR_"+timeStamp+ ".png")); 
    imageIntent.putExtra(MediaStore.EXTRA_OUTPUT, uriSavedImage); 
    startActivityForResult(imageIntent, 1); 
} 



    @Override 
    public void onActivityResult(int requestCode, int resultCode, Intent data) { 
     super.onActivityResult(requestCode, resultCode, data); 
     if (requestCode == 1) { 

      //Check for succesful result code 
      if (resultCode == -1) { 
       //Show your Toast when the result is a success. 
       Toast toast = Toast.makeText(getApplicationContext(), 
         "Picture is saved in your SOC gallery", Toast.LENGTH_SHORT); 
       toast.setGravity(Gravity.TOP | Gravity.CENTER_HORIZONTAL, 100, 0); 
       toast.show(); 
      } 
     } 
    } 
+0

そのパスを取得する必要があります結果のための活動? – Tony

+0

私の活動をそこに追加しました –

+0

私の編集した答えをチェック – Tony

答えて

0

を休閑として

私のコードは、私はあなたが手動でメディアコンテンツプロバイダへのあなたの新しい写真ウリを追加しなければならないと考えています。 )あなたが意図を起動する前に、写真のパスを保存し、その後getCurrentPhotoPath(必要があり、結果

protected void addPhotoToGallery() { 
    Intent mediaScanIntent = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE); 
    File f = new File(getCurrentPhotoPath()); 
    Uri contentUri = Uri.fromFile(f); 
    mediaScanIntent.setData(contentUri); 
    this.getActivity().sendBroadcast(mediaScanIntent); 
} 

を探しhere

+0

なのか分かりませんが、これはコメントだったと思います! – Eenvincible

+0

あなたはリンクで答えてはいけません。 – Tony

0

コールあなたの活動では、この方法を取ると、あなたが実装する方法

関連する問題