2012-01-17 3 views
1

私はカメラ関連のアプリを作成しようとしています。私は上からプログラムで作成することができますが、電話でサポートされているものを使用する方が好きです。画像を制御/保存する方法はアンドロイドカメラを使ってプログラム的に行われましたか?

私は、0からカメラを作成するのではなく、カメラのアクティビティを呼び出すことができます。結局のところ、それは私が必要とするすべてのシステムとGUIを提供します。

しかし、問題は、私が以前に作成したフォルダにresult/imageを保存して、デフォルトのカメラフォルダに保存したかったということです。イメージの名前を変更すると、その瞬間がデフォルトの「イメージ」から私が好む名前になりました。

どうすればいいですか?

答えて

2

これを試してください。ここで画像をsdcardに保存し、保存中にその名前を変更しています。

Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); 

Uri mUri = Uri.fromFile(new File(Environment.getExternalStorageDirectory(), 
       "pic"+ String.valueOf(System.currentTimeMillis()) + ".jpg")); 

intent.putExtra(android.provider.MediaStore.EXTRA_OUTPUT, mUri); 
1

Cameraアプリケーションのソースコードを見ると、画像を返すことのできるstartActivityForResult(..)が使用できます。これは理想的にはあなたがしたいことです。リトルヒントとして

:写真を撮るための方法以下

MediaStore

0

使用、SD_CARD_TEMP_DIRは、あなたがそれを保管したいパスおよびイメージ名です。希望すると助けてください

 private void takePicture(){ 

    SD_CARD_TEMP_DIR = Environment.getExternalStorageDirectory() + File.separator + "farmerImage"+CassavaPref.getInstance(this).getImageSuffix()+".jpg"; 
    file =new File(SD_CARD_TEMP_DIR); 
    Intent takePictureFromCameraIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); 
    takePictureFromCameraIntent.putExtra(android.provider.MediaStore.EXTRA_OUTPUT, Uri.fromFile(file)); 
    startActivityForResult(takePictureFromCameraIntent, 1111); 
} 
+0

1月22日17:56:04.470:E/AndroidRuntime(4924):致命的な例外:メイン 1月22日17:56:04.470:E/AndroidRuntime(4924):java.lang.NullPointerExceptionが – Jovi

+0

最初。あなたのマニフェストにpermissement "write external storage"を追加して、どの行にあなたが没収されているかを伝えます – AAnkit

関連する問題