如何将图像保存到图库Android ap

问题描述:

我正在制作一个android应用程序,当点击一个按钮时它会打开相机,但拍摄照片后图像不会保存。我希望能够将它保存到我的画廊相册中。如何将图像保存到图库Android ap

public void onClickbtnCamera(View v){ 

    Intent intent1 = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); 
    Uri uriSavedImage=Uri.fromFile(new File("/storage/emulated/0/DCIM/Camera/")); 
    intent1.putExtra(MediaStore.EXTRA_OUTPUT, uriSavedImage); 
    startActivityForResult(intent1,3); 

} 
+0

您可能要检查: http://*.com/a/8722494/3390783 –

您正在传入目录EXTRA_OUTPUTEXTRA_OUTPUT需要指向一个文件:

package com.commonsware.android.camcon; 

import android.app.Activity; 
import android.content.Intent; 
import android.net.Uri; 
import android.os.Bundle; 
import android.os.Environment; 
import android.provider.MediaStore; 
import java.io.File; 

public class CameraContentDemoActivity extends Activity { 
    private static final int CONTENT_REQUEST=1337; 
    private File output=null; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    Intent i=new Intent(MediaStore.ACTION_IMAGE_CAPTURE); 
    File dir= 
     Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM); 

    output=new File(dir, "CameraContentDemo.jpeg"); 
    i.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(output)); 

    startActivityForResult(i, CONTENT_REQUEST); 
    } 

    @Override 
    protected void onActivityResult(int requestCode, int resultCode, 
            Intent data) { 
    if (requestCode == CONTENT_REQUEST) { 
     if (resultCode == RESULT_OK) { 
     Intent i=new Intent(Intent.ACTION_VIEW); 

     i.setDataAndType(Uri.fromFile(output), "image/jpeg"); 
     startActivity(i); 
     finish(); 
     } 
    } 
    } 
} 

(从this sample project

+0

它让我拍照但由于某些原因,它仍然没有将其保存在Gallery文件夹中 –

+0

@CraigGallagher:没有“Gallery文件夹”。如果你的意思是你的设备上的一些图库类应用程序没有显示图像,那是因为相机应用程序没有要求'MediaStore'索引该文件。作为'onActivityResult()'的一部分,使用'MediaScannerConnection'及其'scanFile()'方法自己做。 – CommonsWare