我在Android中使用Camera intent时遇到了一些问题。我希望能够服用 一张图片并稍后使用该图片(检索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来指示文件的保存位置。调用Camera意图,但问题是:onActivityResult()仅在我取消相机意图时被触发。因此,当我接受我拍摄的照片时,它根本不会被触发。
希望你能帮忙!