我正在使用不同的标签,几乎相同。 在我的应用程序中,我想使用此代码用相机拍照
public void takePicture(View v) {
imageFilePath = file_path + "/" + "Photo_" + idFiche + ".png";
File imageFile = new File(imageFilePath);
Uri imageFileUri = Uri.fromFile(imageFile);
Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
takePictureIntent.putExtra(MediaStore.EXTRA_OUTPUT, imageFileUri);
startActivityForResult(takePictureIntent, REQUEST_CODE_PICTURE);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
InputStream stream = null;
if (requestCode == REQUEST_CODE_PICTURE && resultCode == Activity.RESULT_OK) {
//blablabla
}
}
适用于某些标签,但与其他标签一起使用时,无法点击照片应用的激活按钮来保存图片,如下图所示,红色边框。
我认为相机应用程序错误,即使我可以直接从设备拍照(而不是从我的应用程序),但如何解决?我可以删除图片应用并使用具有相同代码的其他应用吗?或者通过新意图启动特定的应用程序???
感谢您的帮助
答案 0 :(得分:0)
我认为相机应用程序错误
最有可能。许多相机应用程序似乎都没有经过ACTION_IMAGE_CAPTURE
的测试。
如何解决?
停止使用ACTION_IMAGE_CAPTURE
。直接或通过第三方库使用相机API。
我可以删除图片应用
如果通过"图片应用程序",您的意思是#34;相机应用程序",可能是相机应用程序已预先安装且无法卸载。此外,用户可能不会感谢您尝试卸载他们的相机应用程序。
并使用具有相同代码的其他应用程序?
如果设备上安装了多个支持ACTION_IMAGE_CAPTURE
的应用,则您的代码已经为用户提供了相机应用选择。
或者通过新意图启动特定应用程序?
您所需的特定应用程序&#34>极不可能。存在于设备上。