android studio怎么调用相机

android studio怎么调用相机,第1张

android 调用系统相机解决方法:直接通过Intent调用系统相机

直接调用系统的相机应用,只需要在Intent对象中传入相应的参数即可,总体来说需要以下三步:

1. Compose a Camera Intent

MediaStore.ACTION_IMAGE_CAPTURE 拍照;

MediaStore.ACTION_VIDEO_CAPTURE录像。

2. Start the Camera Intent

使用startActivityForResult()方法,并传入上面的intent对象。

之后,系统自带的相机应用就会启动,用户就可以用它来拍照或者录像。

3. Receive the Intent Result

用onActivityResult()接收传回的图像,当用户拍完照片或者录像,或者取消后,系统都会调用这个函数。

我们要调用摄像头的拍照功能,显然

第一步必须加入调用摄像头硬件的权限,拍完照后我们要将图片保存在SD卡中,必须加入SD卡读写权限,所以第一步,我们应该在Android清单文件中加入以下代码

<uses-permissionandroid:name="android.permission.CAMERA"/>//摄像头权限

SD卡读写权限

<uses-permissionandroid:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

第二步,要将摄像头捕获的图像实时地显示在手机上。

我们是用SurfaceView这个视图组件来实现的,因此在main.xml中加入下列代码

<SurfaceView

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:id="@+id/surfaceview"

/>

第三步,设置窗口的显示方式

首先获得当前窗口 Windowwindow = getWindow()//得到窗口

接着设置没有标题 requestWindowFeature(Window.FEATURE_NO_TITLE)//没有标题

接着设置全屏 window.setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,

WindowManager.LayoutParams.FLAG_FULLSCREEN)//设置全屏

当然,我们在拍照过程中,屏幕必须一致处于高亮状态,因此接着加入下面代码

window.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)//设置高亮

至此,我们将窗口的显示方式规定死了,然后才能设置窗口上显示的组件(顺序非常重要)

setContentView(R.layout.main)

第四步,设置SurficeView显示控件的属性

http://blog.csdn.net/chaozhung_no_l/article/details/8900707


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11389208.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-15
下一篇2023-05-15

发表评论

登录后才能评论

评论列表(0条)

    保存