我在 Android 中使用相机意图时遇到了一些问题。我希望能够拍照并稍后使用该图片(检索 URI)。这是代码:
newPicBut.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View arg0) {
PhotoChoiceActivity.this.launchCameraIntent();
}
});
public void launchCameraIntent()
{
//create camera intent
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
//set fileUri
MediaManager manager = new MediaManager();
manager.setPictureName(currentItemToAdd.toString());
intent.putExtra(MediaStore.EXTRA_OUTPUT, manager.getOutputMediaFileUri());
startActivityForResult(intent, 100);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data){
if(requestCode == 100){
if(resultCode == RESULT_OK){
Toast.makeText(getApplicationContext(), "Image saved to: " + data.getData(), Toast.LENGTH_LONG).show();
}
}
}
所以基本上按钮调用launchCameraIntent() 方法。MediaManager 创建一个文件,我使用 intent.putExtra 中的文件 URI 来指示文件应该保存在哪里。调用了相机意图,但问题出在:onActivityResult() 只有在我取消相机意图时才会触发。所以当我接受我拍摄的照片时,它根本不会被触发。
希望你能帮忙!