广告
返回顶部
首页 > 资讯 > 精选 >Android中怎么实现拍照功能
  • 195
分享到

Android中怎么实现拍照功能

android 2023-05-30 19:05:45 195人浏览 泡泡鱼
摘要

这期内容当中小编将会给大家带来有关Android中怎么实现拍照功能,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。解析:1)判断是否有摄像头checkCameraHardware(this) 2)获得相机c

这期内容当中小编将会给大家带来有关Android中怎么实现拍照功能,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

解析:

1)判断是否有摄像头checkCameraHardware(this)
2)获得相机camera = Camera.open(0);
3)把相机添加到mPreView = new SurfacePreView(this, mCamera);
4)实现拍照 mCamera.autoFocus
5)在拍照后使用mCamera.takePicture(null, null, mPicture);方法把图片保存到sdcard

代码实现:

public class CameraActivity extends Activity {  private Camera mCamera;//相机  private SurfacePreView mPreView;//视图  private FrameLayout mFrameLayout;  @Override  protected void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.activity_camera_takephoto);    mFrameLayout = (FrameLayout) findViewById(R.id.framelayout);    if (checkCameraHardware(this)) {      mCamera = getCamera();      mPreView = new SurfacePreView(this, mCamera);      mFrameLayout.addView(mPreView);    }  }    public void takephoto(View view){    mCamera.autoFocus(new AutoFocusCallback() {      @Override      public void onAutoFocus(boolean success, Camera camera) {        mCamera.takePicture(null, null, mPicture);      }    });  }    private PictureCallback mPicture = new PictureCallback() {    @Override    public void onPictureTaken(byte[] data, Camera camera) {      try {        File file = new File("/sdcard/file/aa.jpg");        if (!file.exists()) {          file.mkdirs();        }        FileOutputStream fos = new FileOutputStream(file);        fos.write(data);        fos.close();      } catch (FileNotFoundException e) {        e.printStackTrace();      } catch (IOException e) {        e.printStackTrace();      }    }  };    private boolean checkCameraHardware(Context context){    if (context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA)) {      return true;    }    return false;   }    public static Camera getCamera(){    Camera camera = null;    try {      camera = Camera.open(0);    } catch (Exception e) {      e.printStackTrace();    }    return camera;  }    @SuppressWarnings("deprecation")  private class SurfacePreView extends SurfaceView implements SurfaceHolder.Callback{    private Camera mCamera;    private SurfaceHolder mHolder;    public SurfacePreView(Context context, Camera camera) {      super(context);      mCamera = camera;      mHolder = getHolder();      mHolder.addCallback(this);      mHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);    }    @Override    public void surfaceCreated(SurfaceHolder holder) {      try {        mCamera.setPreviewDisplay(mHolder);        mCamera.startPreview();      } catch (IOException e) {        e.printStackTrace();      }    }    @Override    public void surfaceChanged(SurfaceHolder holder, int fORMat, int width, int height) {      if (holder.getSurface() == null) {        return;      }      try {        mCamera.stopPreview();        mCamera.setPreviewDisplay(mHolder);        mCamera.startPreview();      } catch (IOException e) {        e.printStackTrace();      }    }    @Override    public void surfaceDestroyed(SurfaceHolder holder) {      //      mCamera = null;    }  }}

布局:

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="Http://schemas.android.com/apk/res/android"  android:layout_width="match_parent"  android:layout_height="match_parent"  android:orientation="vertical" >  <FrameLayout    android:id="@+id/framelayout"    android:layout_width="wrap_content"    android:layout_height="0dp"    android:layout_weight="1" >  </FrameLayout>  <Button    android:id="@+id/button1"    android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:onClick="takephoto"    android:text="拍照" /></LinearLayout>

上述就是小编为大家分享的Android中怎么实现拍照功能了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注编程网精选频道。

--结束END--

本文标题: Android中怎么实现拍照功能

本文链接: https://www.lsjlt.com/news/220675.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Android中怎么实现拍照功能
    这期内容当中小编将会给大家带来有关Android中怎么实现拍照功能,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。解析:1)判断是否有摄像头checkCameraHardware(this) 2)获得相机c...
    99+
    2023-05-30
    android
  • Android实现拍照截图功能
    本文将向大家展示如何拍照截图。 先看看效果图: 拍照截图有点儿特殊,要知道,现在的Android智能手机的摄像头都是几百万的像素,拍出来的图片都是非常大的。因此,我们不能像对...
    99+
    2022-06-06
    Android
  • Android实现手机拍照功能
    本文实例为大家讲解如何轻松实现Android手机拍照功能,分享给大家供大家参考。具体如下: 一、布局文件main.xml <?xml version="1.0...
    99+
    2022-06-06
    手机 Android
  • Android怎么自定义Camera实现拍照小功能
    这篇文章主要介绍“Android怎么自定义Camera实现拍照小功能”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Android怎么自定义Camera实现拍照小功能”文章能帮助大家解决问题。首先实现...
    99+
    2023-06-30
  • 【Android】使用 CameraX 实现基础拍照功能
    目录 1. 基础开发环境 2. 添加相关依赖 3. APP 布局 4. 主流程逻辑 5. 调试或安装 APK 6. 项目完整代码 1. 基础开发环境 JDK:JDK17 Android Studio:Android Studio ...
    99+
    2023-10-10
    android
  • Android自定义Camera实现拍照小功能
    本文实例为大家分享了Android自定义Camera实现拍照的具体代码,供大家参考,具体内容如下 本篇文章就项目开发遇到问题记录下; 1.拍照图片被压缩问题2.拍照图片被旋转问题 首...
    99+
    2022-11-13
  • Android中怎么实现微信朋友圈拍照上传功能
    Android中怎么实现微信朋友圈拍照上传功能,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。1. PhotoPicker的使用这是一个支持选择多张图片,点击图片放大,图片之间左...
    99+
    2023-05-30
  • android实现手机App实现拍照功能示例
    实现手机App实现拍照功能结果如下 第一步: activity_takephoto.xml布局用SurfaceView <?xml version=...
    99+
    2022-06-06
    手机app 示例 app Android
  • html5如何实现拍照功能
    这篇文章将为大家详细讲解有关html5如何实现拍照功能,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 1、 视频流 HTML5 The Media Capture A...
    99+
    2022-10-19
  • Android自定义相机实现定时拍照功能
    这篇博客为大家介绍Android自定义相机,并且实现倒计时拍照功能。 首先自定义拍照会用到SurfaceView控件显示照片的预览区域,以下是布局文件: activity_...
    99+
    2022-06-06
    相机 Android
  • 怎么在HTML5中实现拍照和摄像机功能
    本篇文章为大家展示了怎么在HTML5中实现拍照和摄像机功能,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。拍照HTML5的getUserMedia API为用户提供访问硬件设备媒体(摄像头、视频、音频...
    99+
    2023-06-09
  • Android 实现调用系统照相机拍照和录像的功能
    本文实现android系统照相机的调用来拍照 项目的布局相当简单,只有一个Button: <RelativeLayout xmlns:android="http://s...
    99+
    2022-06-06
    调用 系统 相机 Android
  • Android4.4 WebAPI实现拍照上传功能
    网上有很多关于拍照上传的实现方法,如果用新版本android去运行有可能会发现根本实现不了。主要原因是android从4.4版本开始通过intent.ACTION_GET_CO...
    99+
    2022-06-06
    webapi Android
  • html5拍照功能的实现方法
    这篇文章主要介绍“html5拍照功能的实现方法”,在日常操作中,相信很多人在html5拍照功能的实现方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”html5拍照功能的实现...
    99+
    2022-10-19
  • 利用Java+OpenCV实现拍照功能
    由于项目需要拍照,看了好多的资料不是C语言的就是python,开始用的JavaCv但是有好多问题,所以改成了OpenCv 只能硬着上了,查了好的网上的资料,终于找到了 依赖jar包:...
    99+
    2022-11-12
  • 怎么在Android应用中实现一个单击拍照长按录像功能
    怎么在Android应用中实现一个单击拍照长按录像功能?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。在modlue gradle中添加compile '...
    99+
    2023-05-31
    android roi
  • 如何使用HTML5实现拍照功能
    这篇文章主要介绍“如何使用HTML5实现拍照功能”,在日常操作中,相信很多人在如何使用HTML5实现拍照功能问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何使用HTML5实...
    99+
    2022-10-19
  • vue实现pc端拍照上传功能
    本文实例为大家分享了vue实现pc端拍照上传功能的具体代码,供大家参考,具体内容如下 <!DOCTYPE html> <html>   <hea...
    99+
    2022-11-12
  • 微信小程序实现拍照功能
    小程序实现一个拍照功能,亲测可用。 页面的样式都是我自己写的,当然你们也可以自己排版写样式。下面一共有三个按钮,返回按钮、拍照按钮、切换摄像头按钮。 首先相机页面是通过wx:if来...
    99+
    2022-11-13
  • 如何用Java+OpenCV实现拍照功能
    本篇内容主要讲解“如何用Java+OpenCV实现拍照功能”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何用Java+OpenCV实现拍照功能”吧!依赖jar包:只有一个OpenCv的jar包...
    99+
    2023-06-26
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作