1

startActivityForResult() を使用して、写真を撮ってファイルに保存しようとしています。しかし、「保存」ボタンをタップした後、何も保存されず、再びカメラが開かれました。デバイス Samsung Galaxy S3(4.1.1) および Samsung Galaxy Nexus(4.1.1) を使用していますが、Motorola Defy(2.3.4) で正常に動作しています。Android OS 4.1.1 またはデバイスの問題ですか?

@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..");
    }
}
4

1 に答える 1

0

追加パラメータに問題があります。ここでこの例を使用してください

于 2013-02-22T09:09:35.770 に答える