2013-02-22 25 views
1

我想拍照並通過使用startActivityForResult()將其保存到文件。但點擊「保存」按鈕後,它沒有保存任何東西,並再次打開相機。 使用設備三星Galaxy S3(4.1.1)和三星Galaxy Nexus(4.1.1),但其摩托羅拉Defy(2.3.4)罰款罰款。 這是Android OS 4.1.1或Device的問題嗎?攻牙相機保存按鈕動作再次打開相機在Android jellybean

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    File file = null; 
    Date date = new Date(); 
    try { 
     file = new File("photosearch-"+date.getTime()+".jpeg"); 
     Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); 
     intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(file)); 
     Log.e(TAG, " startActivityForResult"); 
     startActivityForResult(intent, CAMERA_ACTIVITY); 
    } catch (Exception e) { 
     Log.d(TAG, ""+e); 
     //Check if sdcard is accessible 
     Toast.makeText(getActivity(), "Unable to access SD Card", Toast.LENGTH_LONG).show(); 
     getActivity().finish(); 
    } 

} 
@Override 
public void onActivityResult(int requestCode, int resultCode, Intent data) { 
    super.onActivityResult(requestCode, resultCode, data); 
    Log.d(TAG, "onActivityResult...."); 

    if(resultCode == Activity.RESULT_CANCELED){ 
     Intent intent = new Intent(getActivity(), AnotherListActivity.class); 
     intent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT); 
     startActivity(intent); 
     getActivity().finish(); 
    } 
    if(resultCode == CAMERA_ACTIVITY){ 
     Log.d(TAG, "It should come here.."); 
    } 
} 

回答

0

你對你有額外的參數問題,用這個例子here

+0

感謝。你的意思是:intent.putExtra(MediaStore.EXTRA_OUTPUT,Uri.fromFile(file)); – Subrat 2013-02-22 10:04:56