- 博客(108)
- 资源 (2)
- 收藏
- 关注
原创 Android实现人脸检测
这意味着,在连续的视频帧中检测到的人脸可以被识别为同一个人。人脸跟踪仅根据人脸在视频序列中的位置和动作进行推断。借助机器学习套件的人脸检测 API,您可以检测图片中的人脸、识别主要的面部特征,并获取检测到的人脸的轮廓。请注意,该 API 用于检测人脸,不识别人脸。人脸检测功能可定位数字图片或视频等视觉媒体中的人脸。请注意,启用轮廓检测后,仅会检测一张人脸,因此人脸跟踪不会产生有用的结果。因此,为了加快检测速度,请勿同时启用轮廓检测和人脸跟踪。是指人脸内的兴趣点。机器学习套件能够在检测到的面部上查找特征点。
2025-04-07 17:51:12
699
原创 Android 使用CameraX实现预览、拍照、录制视频(Java版)
CameraX 会为您解决设备兼容性问题,因此您无需向应用添加针对特定设备的代码。新应用应使用 CameraX(推荐)或 Camera2,而现有应用应进行迁移,以充分利用新功能,并避免不再兼容未来设备。Android相机一般包含前置摄像头和后置摄像头,使用相机可以开发一系列激动人心的应用,例如拍摄视频和图片以便与社交媒体分享,以及创建文档和二维码扫描等实用程序。如果只是使用相机进行拍照或录制视频等基本相机操作,则无需使用CameraX或Camera2,可以直接使用 Intent 方式。
2025-04-01 11:14:42
494
原创 Android <queries>声明的作用和配置方法
通过在AndroidManifest.xml中添加标签,开发者可以声明应用可以查询的其他应用的信息类型。如果您的应用需要查询其他应用提供的特定意图(如相机、存储访问等),可以在标签中添加相应的子标签,并指定需要查询的意图名称。这样,您的应用就可以查询提供android.media.action.IMAGE_CAPTURE意图的应用。如果您的应用需要查询其他应用的内容提供者,可以在标签中添加子标签,并指定提供者名称。如果您的应用需要查询特定包名的应用,可以在标签中添加子标签,并指定包名。
2025-03-21 15:16:11
358
原创 Android Studio恢复本地和Git上删除的分支
在软件开发过程中,版本控制是一个至关重要的环节。Git 是最流行的分布式版本控制系统之一,它能够帮助团队高效地管理代码。然而,有时候会发生意外,例如代码误合、错误的删除等情况,导致重要的开发分支本地和远程不慎被删除。本文将为您介绍如何使用 Git 命令行在 GitLab 中恢复已删除的分支,帮助您快速解决这类问题。
2025-03-18 15:51:39
175
原创 Android 蓝牙OTA固件升级
只要是通过无线通信方式实现DFU的,都可以叫OTA,比如2G/3G/4G/WiFi/蓝牙/NFC/Zigbee,他们都支持OTA。DFU除了可以通过无线方式(OTA)进行升级,也可以通过有线方式进行升级,比如通过UART,USB或者SPI通信接口来升级设备固件。准确地说,OTA的全称应该是OTA DFU,即通过空中无线方式实现设备固件升级。只不过大家为了方便起见,直接使用OTA来指代固件空中升级(有时候也将OTA称为FOTA,即Firmware OTA)。进行OTA固件升级之前,我们需要先了解几个概念。
2025-03-07 17:31:33
372
原创 Android 扫一扫 扫码的几种实现方式
上面有提到DecoratedBarcodeView,主要的三个view:BarcodeView、ViewfinderView、TextView。这里对包括扫描框的ViewfinderView进行自定义。ViewfinderView的默认效果从演示效果图中可以看到是中间的一根红色线,渐隐渐现,扫描时在还能出现些许黄色的小圆点。这里我们要做的是去掉中间红色的线,换成我们绘制的扫描线,并在四个角绘制边角。
2024-12-18 14:54:50
2079
原创 Android Room 数据库使用详解
Android Room 是 Google 提供的一个 Android 数据持久化库,是 Android Jetpack 组成部分之一。它提供了一个抽象层,使得 SQLite 数据库的使用更为便捷。通过 Room,开发者可以轻松地操作数据库,不需要直接编写繁琐的 SQL 语句。hl=zh-cn#0Room 包含三个主要组件数据库类,用于保存数据库并作为应用持久性数据底层连接的主要访问点。数据实体类,用于表示应用的数据库中的表。数据访问对象 (DAO)
2024-12-17 17:22:28
1162
原创 Android获取状态栏、导航栏的高度
Android 9.0的frameworks/base/core/res/res目录源码:https://android.googlesource.com/platform/frameworks/base/+archive/refs/heads/pie-release-2/core/res/res.tar.gz。这种方法需要 API 20 (Android 4.4W) 以上,但在较新版本的 Android(API 21及以上)中更为准确。
2024-11-27 14:56:37
1526
原创 Android BottomNavigationView 底部导航栏使用详解
BottomNavigationView是官方提供可以实现底部导航的组件,最多支持5个item,主要用于功能模块间的切换,默认会包含动画效果。
2024-11-25 14:34:21
3419
原创 【错误记录】Plugin [id: ‘com.android.application‘, version: ‘8.1.1‘, apply: false] was not found in any of
删除settings.gradle文件,然后重新构建项目,就正常了。
2024-11-21 16:59:44
626
原创 Android Studio gradle镜像配置
当我们在Android Studio中新建项目或者打开已有项目时,会下载gradle文件,当使用官方的下载源时很慢,经常会下载失败,国内我们可以使用腾讯或者阿里的镜像,一般下载速度很快。
2024-09-25 15:35:17
4317
原创 MySQL的下载和安装步骤
我们先来了解三个概念:数据库、数据库管理系统、SQL。名称全称简称数据库存储数据的仓库,数据是有组织的进行存储数据库管理系统操纵和管理数据库的大型软件SQL操作关系型数据库的编程语言,定义了一套操作关系型数据库统一标准目前主流的关系型数据库的排名(根据DB-Engines网站公布的数据库排名)
2024-08-06 23:23:06
1404
原创 Windows常用的运行命令
命令“shutdown -s -t XXXX”,其中“XXXX”代表关机前的倒计时时间(单位为秒)。例如,输入“shutdown -s -t 3600”表示电脑将在1小时后自动关机。mstsc = ms + t(terminial终端) + s(service服务)+c(client客户端)devmgmt = dev(device设备) + mgmt (management管理)如果想取消倒计时关机,还可以输入“shutdown -a”mspaint = ms + paint(画图)
2024-08-05 18:20:12
851
原创 Android Studio上传新项目到Gitee
Commit and Push后,点击 Define remote。等待push完成,项目文件变成白色,项目就被上传到Gitee了。输入提交信息,然后点击Commit and Push…点击项目文件夹,右键选择Git→Add,添加文件。点击Push,推送到Gitee仓库。添加完成,已添加的文件变成绿色。点击OK,项目文件会变成红色。修改完成,点击Sync。点击commit按钮。
2024-06-26 16:41:21
2293
1
原创 Android Ble蓝牙状态码及错误码汇总
HCI,即主机控制接口(Host Controller Interface),属于蓝牙协议栈的一部分。连接状态回调方法:onConnectionStateChange。描述蓝牙新的连接状态。
2024-06-24 15:43:08
3271
原创 Android Compose 文本输入框TextField使用详解
TextField 允许用户输入和修改文本,也就是文本输入框。TextField是默认样式OutlinedTextField 是轮廓样式版本BasicTextField 允许用户通过硬件或软件键盘修改文本,但不提供提示或占位符等装饰,一般用于自定义输入框。
2024-06-17 17:44:28
2509
原创 Android Jetpack Compose入门教程(二)
现在,您可以根据点击消息时消息的 isExpanded 状态,更改消息内容的背景颜色。它接受 List 作为参数,并且其 lambda 会收到我们命名为 index的参数(可以随意为其命名),该参数是 List的index。这些可组合项只会呈现屏幕上显示的元素,因此,对于较长的列表,使用它们会非常高效。您已高效地构建了一个简单的聊天界面,该界面显示包含图片和文字的可展开动画消息列表,使用 Material Design 原则设计,添加了深色主题且具有预览功能,所有内容只需不到 100 行代码!
2024-06-13 18:00:19
1468
原创 Android Jetpack Compose入门教程(一)
如需使函数成为可组合函数,请添加 @Composable 注解。如需尝试此操作,请定义一个 MessageCard 函数并向其传递一个名称,然后该函数就会使用该名称配置文本元素。) {")
2024-06-13 17:50:44
1352
原创 Android WebSocket长连接的实现
WebSocket 协议在2008年诞生,2011年成为国际标准。所有浏览器都已经支持了。它的最大特点就是,服务器可以主动向客户端推送信息,客户端也可以主动向服务器发送信息,是真正的双向平等对话,属于[“服务器推送技术”]的一种。WebSocket的特点包括:建立在 TCP 协议之上,服务器端的实现比较容易。与 HTTP 协议有着良好的兼容性。默认端口也是80和443,并且握手阶段采用 HTTP 协议,因此握手时不容易屏蔽,能通过各种 HTTP 代理服务器。支持双向通信,实时性更强。
2024-06-12 17:49:58
3030
原创 Android SDK版本号与API Level 的对应关系
自从Android 1.5系统以来,谷歌习惯于用甜点为每个版本的移动操作系统命名,而且按字母顺序排列,这个传统始于八年多以前,从早期的Android1.5 C(Cupcake)、Android 1.6 D(Donut)到最近的Android9.0 P一直沿用这个传统,命名的首字母按字母排序在增加。
2024-06-12 17:41:53
2457
原创 Android单例的几种实现方式
确保一个类只有一个实例,并提供一个全局访问点来访问该实例。某些类只应该有一个实例,比如配置类、日志类等。当实例化需要消耗大量资源时,如数据库连接池、线程池等。当多个实例会导致问题时,如共享访问修改同一个资源。私有化构造函数,防止外部直接创建实例。提供一个静态的访问入口,返回唯一的实例。保证线程安全,确保只有一个实例被创建。
2024-06-11 15:23:41
718
原创 Android Ble低功耗蓝牙开发
在build.gradle中引入三方库’com.blankj:utilcodex:1.31.1’,用于权限管理和获取各种工具类。然后在搜索蓝牙设备的点击事件中检测手机是否已开启蓝牙,已开启蓝牙,可以搜索蓝牙设备,未开启蓝牙,需要先开启蓝牙。搜索蓝牙设备之前,需要检测手机蓝牙是否已经打开,如果未开启蓝牙,需要先开启蓝牙,才能搜索蓝牙设备。在项目包名的位置,右键选择创建Empty Views Activity。在android{}闭包中添加viewBinding,用于获取控件。
2024-06-07 15:58:29
1607
原创 Android 蓝牙概述
蓝牙是一种短距离(一般10m内)无线通信技术。蓝牙技术允许固定和移动设备在不需要电缆的情况下进行通信和数据传输。“蓝牙”这名称来自10世纪的丹麦国王哈拉尔德(Harald Gormsson)的外号。出身海盗家庭的哈拉尔德统一了北欧四分五裂的国家,成为维京王国的国王。由于他喜欢吃蓝莓,牙齿常常被染成蓝色,而获得“蓝牙”的绰号,当时蓝莓因为颜色怪异的缘故被认为是不适合食用的东西,因此这位爱尝新的国王也成为创新与勇于尝试的象征。1998年,爱立信公司希望无线通信技术能统一标准而取名“蓝牙”。
2024-06-06 15:20:00
505
原创 Android Dialog使用汇总
Android 包含另一个名为 ProgressDialog 的对话框类,该类可显示带有进度条的对话框。如果您需要指示加载进度或不确定的进度,请遵循进度和 Activity 中的设计准则,并在布局中使用 ProgressBar,而不是 ProgressDialog。Dialog 类是对话框的基类,官方建议我们不要直接实例化它,而是使用其子类来获取实例。AlertDialog是系统提供的一个直接子类,它能帮助我们快速构建出不同类型的弹窗。对于复杂样式的弹窗,使用DialogFragment更加方便和高效。
2024-06-05 11:00:10
1595
原创 数据库系统基础知识
一、基本概念二、数据库三级模式两级映像三、数据库的分析与设计过程四、数据模型五、关系代数六、数据库完整性约束七、关系型数据库SQL简介八、关系数据库的规范化九、数据库的控制功能十、数据仓库与数据挖掘基础十一、大数据基本概念1、数据库数据库(Database,缩写为DB)是指长期存储在计算机内的、有组织的、可共享的数据集合。数据库中的数据按一定的数据模型组织、描述和存储,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。2、数据库管理系统数据库管理系统(DatabaseMa
2024-05-25 15:12:18
463
原创 操作系统基本原理
操作系统(Operating System,OS)是指控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源的分,以提供给用户和其他软件方便的接口和环境,它是计算机系统中最基本的系统软件。
2024-05-25 14:16:44
297
Android逆向助手2.0.zip
2020-04-03
settings.zip
2020-04-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人