デフォルトのカメラを使って写真を撮ってDBに保存するアプリケーションがあります。Android:カメラの問題(写真を撮る)
私が使用したカメラのコードは次のとおりです。
package com.android.SamsungMIv4;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import android.app.Activity;
import android.content.ActivityNotFoundException;
import android.content.ContentValues;
import android.content.Intent;
import android.graphics.Bitmap;
import android.net.Uri;
import android.os.Bundle;
import android.os.Environment;
import android.provider.MediaStore;
import android.util.Log;
import android.widget.Toast;
public class camera extends Activity {
private static final int TAKEPICTURE_ACTIVITY = 0;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Intent i = new Intent("android.media.action.IMAGE_CAPTURE");
try{
startActivityForResult(i, TAKEPICTURE_ACTIVITY);
}catch(ActivityNotFoundException e){
Toast.makeText(this, "Application not available",
Toast.LENGTH_SHORT).show();}
//Log.e(TAG, "Error in taking picture");
}
@Override
protected void onActivityResult(int requestCode, int resultCode,
Intent intent) {
super.onActivityResult(requestCode, resultCode, intent);
if (requestCode == TAKEPICTURE_ACTIVITY){
if (resultCode == RESULT_OK) {
Bundle extras = intent.getExtras();
Bitmap bitmap = (Bitmap) extras.get("data") ;
}
}
}
}
しかし、問題は、私が撮影した画像の名前を指定することはできません、これは私のためにDBに問題を引き起こすということです。だから私は 1)キャプチャされた画像のファイル名を追加する方法を含める または 2)ここで私のキャプチャ画像が含まれている "ビットマップ"と仮定しています。もしそうなら、私は指定した名前と一緒にその場所に保存する方法を教えてください。 OR 3)このカメラは別のアクティビティで使用しているサービスなので、コンテンツ値を使用して以前のアクティビティにキャプチャしたイメージを戻す方法はありますか?