如果要在自己的应用中实现拍照的功能,首先要在AndroidManifest.xml文件中添加权限:
<uses-permission android:name="android.permission.CAMERA"/>
启动相机的方法非常简单,通过intent访问MediaStore.ACTION_IMAGE_CAPTURE
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(intent, 1);
拍照并确认后,Activity的onActivityResult方法会被调用,在这里可以获取图片的数据。
onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == 1) {
if (resultCode == RESULT_OK) {
Bitmap bmPhoto = (Bitmap) data.getExtras().get("data");
// You can set bitmap to ImageView here
}
}
}
用这种方法,会发现获取的Bitmap很小,这其实是拍下的图片的缩略图。
如果想获取原始的大图,推荐的方法是在启动相机前先指定好图片的文件地址,通知intent,同时也保留在成员变量中。
然后在onActivityResult函数中,可以直接打开该文件。

在Android应用中添加相机功能需要在AndroidManifest.xml中声明权限。通过intent调用MediaStore.ACTION_IMAGE_CAPTURE启动相机,onActivityResult回调中获取图片数据。注意默认获取的是缩略图,若要保存原始大图,需指定输出文件路径,并在onActivityResult中读取该文件。
最低0.47元/天 解锁文章
7074

被折叠的 条评论
为什么被折叠?



