2014-04-30 99 views
1

我知道這個問題可能已經在這裏,但我沒有找到任何可以幫助我的東西。我想拍照並保存它的路徑。我已經拍了照片,但我不能在Toast中顯示路徑或將它保存在數據庫中。拍照並保存路徑

private static final int TAKE_PICTURE = 1; 
private Uri outputFileUri; 
SQLiteDatabase mydb; 
static Uri capturedImageUri = null; 
ImageView ecran; 
Button b2,vertudo; 
private String path; 
ArrayList data; 
ListView lista; 

public void onClick(View v) { 
      try{ 
      Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); 
      File file = new File(Environment.getExternalStorageDirectory(),"test.jpg"); 
      outputFileUri = Uri.fromFile(file); 
      intent.putExtra(MediaStore.EXTRA_OUTPUT, outputFileUri); 
      startActivityForResult(intent, TAKE_PICTURE); 
      }catch(Exception e){ 

      } 

public void onActivityResult(int requestCode, int resultCode, Intent data) { 
    try{ 
     if (resultCode == RESULT_OK) { 
      if (requestCode == TAKE_PICTURE) { 
       outputFileUri = data.getData(); 
       path = getPath(outputFileUri); 
       mydb.execSQL("INSERT INTO caminho(nome) VALUES('"+path+"');"); 
       Toast.makeText(getApplicationContext(), "Sucesso " + path,Toast.LENGTH_LONG).show(); 
      } 
     } 
    }catch(Exception e){ 
     Toast.makeText(getApplicationContext(),"Nao",Toast.LENGTH_LONG).show(); 
    } 

public String getPath(Uri uri) { 
    String[] projection = { MediaStore.Images.Media.DATA }; 
    Cursor cursor =getContentResolver().query(uri, projection, null,null,null); 
    int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA); 
    cursor.moveToFirst(); 
    return cursor.getString(column_index); 
} 

回答

0

你正在嘗試在 路徑=的getPath(outputFileUri)做;

我認爲data.getData()onActivityResult願買電子健康直接返回所捕獲的圖像的路徑。