autojs-camera2-照相机-实现单拍和连拍

简介: autojs-camera2-照相机-实现单拍和连拍

拍照界面


部分代码截图


研究心得

修改安卓代码还是得多练习,

我认为专项练习的效果, 比综合练习的效果好

这个照相机功能用的是自定义控件

界面代码

ui.layout(
  <vertical>
    <button id="btn_shutter" text="btn_shutter"></button>
    <button id="btn_shooting" text="btn_shooting"></button>
    <Camera2View
      android:id="@+id/camera2_view"
      android:layout_width="match_parent"
      android:layout_height="match_parent"
    />
  </vertical>
);


摄像头类型

// 前置 后置
let camera_type = CameraCharacteristics.LENS_FACING_FRONT;
// let camera_type = CameraCharacteristics.LENS_FACING_BACK;



光java类就导入几十种

importClass(java.util.ArrayList);
importClass(java.util.Arrays);
importClass(java.util.Collections);
// importClass(com.example.device.util.BitmapUtil);
// importClass(com.example.device.util.DateUtil);
importClass(Packages.androidx.core.app.ActivityCompat);
importClass(java.lang.Runnable);
importClass(android.Manifest);
importClass(android.content.Context);
importClass(android.content.pm.PackageManager);
importClass(android.graphics.ImageFormat);
importClass(android.graphics.SurfaceTexture);
importClass(android.hardware.camera2.CameraAccessException);
importClass(android.hardware.camera2.CameraCaptureSession);
importClass(android.hardware.camera2.CameraCharacteristics);
importClass(android.hardware.camera2.CameraDevice);
importClass(android.hardware.camera2.CameraManager);
importClass(android.hardware.camera2.CameraMetadata);
importClass(android.hardware.camera2.CaptureRequest);
importClass(android.hardware.camera2.params.StreamConfigurationMap);
// importClass(android.media.Image);
importClass(android.media.ImageReader);
importClass(android.media.ImageReader.OnImageAvailableListener);
importClass(android.os.Build);
importClass(android.os.Handler);
importClass(android.os.HandlerThread);
importClass(android.util.AttributeSet);
importClass(android.util.Log);
importClass(android.util.Size);
importClass(android.view.Surface);
importClass(android.view.TextureView);
importClass(android.widget.Toast);
importClass(android.view.TextureView.SurfaceTextureListener);


基本上这个照相机demo里面涵盖了大部分, 把安卓修改为autojs的例子, 我按F5调试这个相机, 我觉得都按了上百次, 应该也没有内存泄漏, 我的手机一直在300m左右徘徊, 不管是单拍还是连拍

环境

手机: Mi 11 Pro

Android版本: 11

Autojs版本: 9.0.11

MIUI版本: 12.5.20



相关文章
|
测试技术 Android开发
autojs横屏截图的正确姿势
牙叔教程 简单易懂
3298 0
|
Android开发
autojs无Root访问data目录实现
牙叔教程 简单易懂
2818 0
|
移动开发 JavaScript 前端开发
游戏框架 - 描述Phaser、Three.js等JavaScript游戏框架的核心功能和使用场景。
Phaser是开源2D游戏引擎,适合HTML5游戏,内置物理引擎和强大的图形渲染功能,适用于2D游戏,如消消乐。Three.js是基于WebGL的3D库,用于创建和显示3D图形,支持交互和多种3D效果,广泛应用在游戏、可视化等多个领域。两者各有侧重,选择取决于项目需求和图形交互要求。
501 3
|
2月前
|
机器学习/深度学习 Android开发 数据安全/隐私保护
手机脚本录制器, 脚本录制器安卓,识图识色屏幕点击器【autojs】
完整的UI界面,包含录制控制按钮和状态显示 屏幕点击动作录制功能,记录点击坐标和时间间隔
|
3月前
|
机器学习/深度学习 JSON 自然语言处理
小模型,大用途!用于结构化输出的小型语言模型
小型语言模型(SLM)通常被用于端侧推理,搜索推荐query改写这类对于资源要求低,大规模并发时延要求高的场景
162 0
|
10月前
|
存储 IDE Java
漂亮不是梦!Java Swing美化攻略
Java Swing 是一个为 Java 设计的 GUI 工具包,提供文本框、按钮等组件。尽管其外观可定制,通过 Look and Feel(LAF)机制改变应用风格,如 Darcula 和 FlatLaf,但现已淡出主流视野,主要应用于 IDE 领域,如 IntelliJ IDEA 和 Eclipse。相比其他 GUI 框架,Swing 的发展前景有限。
338 1
|
12月前
|
容灾 关系型数据库 数据库
阿里云RDS服务巴黎奥运会赛事系统,助力云上奥运稳定运行
2024年巴黎奥运会,阿里云作为官方云服务合作伙伴,提供了稳定的技术支持。云数据库RDS通过备份恢复、实时监控、容灾切换等产品能力,确保了赛事系统的平稳运行。
 阿里云RDS服务巴黎奥运会赛事系统,助力云上奥运稳定运行
Java系列之 重命名文件/图片,renameTo() 方法的使用
这篇文章介绍了Java中File类的renameTo()方法,包括其使用方式、参数、返回值以及一些使用时的注意事项,并通过示例代码演示了如何使用该方法来重命名文件。
Java系列之 重命名文件/图片,renameTo() 方法的使用
|
项目管理 vr&ar 图形学
怎么将两个模型合并成一个?
当你需要将多个3D模型组合为一个整体,简化管理、提高渲染性能或实现特定的效果时,合并模型是一个有用的工具和技术。
590 1
|
文字识别 Android开发 C++
Tesseract OCR集成Android Studio实现OCR识别
Tesseract OCR集成Android Studio实现OCR识别
680 0