- 博客(29)
- 资源 (1)
- 收藏
- 关注
原创 OpenHarmonyOS 3.2 编译生成的hap和app文件的名称如何配置追加版本号?
找了一圈发现官方的文档都是最新的,3.2很多API都不支持,比如获取OhosAppContext,通过OhosAppContext来获取应用版本号,最终是通过读取app.json5的文件内容来读取版本号,最终修改entry下的hvigorfile.ts如下,执行./hvigorw assembleHap,或者编译打包就可以生成新的hap名字了。
2025-01-24 09:23:01
649
原创 Android通过KNX协议控制和读取灯的开关状态
KNX 是建筑自动化和家庭控制系统的标准,起源于1990年代初的 EIB (European Installation Bus)。它是一种开放协议,可以实现建筑物中各种设备和系统之间的通信,如照明、供暖、通风、安全和音视频设备。该技术由 KNX 协会管理,该协会负责全球 KNX 产品和解决方案的开发、认证和推广。KNX 使用各种传输介质,包括双绞线(TP)、电力线通信(PL)、无线电频率(RF)和 IP/Ethernet。
2024-08-26 13:27:15
767
原创 Android如何让应用在待机休眠的维持心跳运行
1、AlarmManager.ELAPSED_REALTIME:使用相对时间,可以通过SystemClock.elapsedRealtime()获取(从开机到现在的毫秒数,包括手机的睡眠时间),设备休眠时并不会唤醒设备。JobScheduler是在Android 5.0添加的,它可以检测网络状态、设备是否充电中、低电量、低存储等状态,当所有条件都满足时就会触发执行对应的JobService来完成任务。在 Android 设备上,默认情况下,当设备进入休眠状态时,网络连接会自动断开以节省电池。
2023-06-15 13:44:13
4360
3
原创 Android使用BACnet协议对设备进行控制和状态读取
关于BACnetBACnet 是一个为嵌入式系统实现的 BACnet (楼宇自动化和控制网络)专门协议。 BACnet 本身就是一个标准的路由协议设计用于处理通信自动化的建筑,如空调系统和其他暖通设备。Android如何使用BACnet使用bacnet4j这个库bacnet4j使用Yabe这个模拟器进行测试BACnet读取测试public class ReadTest01 { public static void main(String[] args) throws Exceptio
2022-05-11 11:00:19
1617
3
原创 Android7.1.2修改以太网静态设置
如何设置以太网有线网络静态配置从源码看设置以太网配置调用的是EthernetManager的setConfiguration方法,所以我们就只需要创建IpConfiguration这个实例,他的构造方法传入值是最终配置的参数就是StaticIpConfiguration这个类来配置ipAddress,gateway,dnsServers这三个值涉及的类主要有,但这些都是隐藏的apk无法调用,只能通过反射进行调用,但前提是你的apk是系统apk,不然没有权限。 private static
2022-04-24 11:13:51
3382
原创 productFlavors配置多个签名
signingConfigs { 101{ keyAlias '33' keyPassword '33' storeFile file(project.projectDir.parent +'/keystore/101.keystore') storePassword '333' } 202 { keyAlias '111' ...
2022-04-02 11:17:54
1340
原创 Android jxl读取excel文件异常:Unable to recognize OLE stream 的解决方法
jxl读取excel文件异常:Unable to recognize OLE stream 的解决方法jxl只支持97到03版本的xls,在电脑上另保存一份xls再放到Android的assets目录下,写excel的时候把这个模板拷到内存下。Android使用Jxl对excel追加写入 try { File file; File dir = new File("/storage/emulated/0/TempRecord/");
2021-08-20 15:54:51
661
原创 Messaging项目说明
Messaging介绍一款系统短信应用项目结构app:主程序chips:系统扩展控件photoviewer:图片预览器项目说明数据加载(同步mmssms.db数据)同步工作从 BugleApplication 创建时发起;依次执行 DataModel.immediateSync –> SyncManager.immediateSync –> SyncMessagesAction.sync 在这里创建 SyncMessagesAction 对象;然后将该SyncMes
2021-07-26 09:55:59
62
原创 Linux系统编译应用
编译:(1)初始化编译环境source build/envsetup.sh(2)选择项目lunch 列举所有X //X为对应项目序号 (编译分支:17.aosp_coral-userdebug)(3)编译源码make -j X // X为编译使用线程数量(4)编译单个模块:mmm或者mm 如:mmm packages/apps/Settings2.Android Studio 导入系统源码(1)初始化编译环境source build/envsetup.sh(2)选择
2021-07-20 15:13:13
53
原创 系统应用编译问题总结
目录目录 1一、 背景 2二、 系统部分移植总结 22.1、缺库 22.2、混淆 42.3、资源文件包含 4三、 应用部分移植总结 5语法报错 5BuildConfig文件缺失问题 7切面编程问题 7DataBinding问题 7四、 遗留问题 81、外部so库没有编入到apk中 82、 混淆问题 8五、 问题总结 84.1系统部分 8一、背景为了更好的对app进行版本管理,跟随基线版本走。将系统以往独立开发的app集成到系统中统一管理。二、系统部分移植总结本次重
2021-07-20 14:57:12
70
原创 IntentService源码分析
IntentService源码分析1.创建HandleThread HandlerThread thread = new HandlerThread("IntentService[" + mName + "]"); thread.start();2.拿到HandlerThread的Looper创建Handler mServiceLooper = thread.getLooper(); mServiceHandler = new Servi
2021-03-30 14:27:25
185
原创 Messaging短信源码导入AndroidStudio
文章目录前言一、导入源码二、添加依赖1.引入framework.jar2.引入其他依赖3.引入so库Apk签名总结前言要对短信应用进行二次开发,之前也没有怎么搞过系统app这块,网上提供开发方式主要有两种,一种是在系统源码下修改然后通过mm命令进行编译,编译生成的apk再安装到手机上,这种方式配置没有那么麻烦,但是每一次开发和安装比较繁琐。另外一种就是导入到AndroidStudio进行开发,这种方式后面开发过程体验较好,只是前期环境配置比较麻烦。一、导入源码我下载的是Android11的源码,
2021-03-11 15:43:18
625
原创 安卓短信Messaging数据库表格整理与字段分析
数据库说明Messaging创建了数据库bugle_db用于同步mmssms.db的数据,短信查询时直接从bugle_db数据库进行查询。数据库中数据表有:conversations,messages,parts,participants,conversation_participants视图有:draft_parts_view ,coversation_image_parts_view ,conversation_list_view数据表数据表 conversation_participants
2021-03-11 11:19:33
1226
原创 极光接入厂商推送踩的坑
极光接入厂商推送注意问题华为1.华为推送不支持自定义channel_id,从EMUI 10.0版本开始推送服务将通知消息智能分成三个级别:一般、重要和非常重要。EMUI 10.0之前的版本没有对通知消息进行分类,只有一个级别,消息全部通过“默认通知”渠道展示,等价于EMUI 10.0的重要级别消息。所以自定义channel_id配置不起作用,导致测试时有的有铃声有的没有。小米1.极光后台配置的channel_id,需要在小米后台配置。2.小米推送默认显示应用图标,黑底的话状态栏显示完全白色的图标。
2020-12-23 11:19:16
1622
2
原创 Android面试总结
技术面1、请讲一下你现在具体的工作2、有过自定义View经验吗?流程是怎样的?3、了解动画这一块吗?主要分为哪几种,如果做一个摆臂的动画,动画结束后隐藏该如何实现?4、Android不同版本有做过适配这一块吗?屏幕适配这一块采取的是什么方案?安卓4.4和安卓7.0有什么区别吗?5、有用过RecyclerView吗?他和ListView有什么区别?RecyclerView的分组通过Item...
2020-08-17 10:56:28
126
1
原创 Android自定义Sunburst Chart(太阳图)
功能一种显示树形结构的图表,内圆是外圆的父节点,一层层显示绘制效果图使用示例package com.eroad.product.tools;import android.animation.ValueAnimator;import android.app.Activity;import android.content.Context;import android.graphics.Canvas;import android.graphics.Color;import android
2020-08-14 19:31:04
537
原创 开源一个kotlin练手项目
基金助手学习kotlin练练手,做了一个基金数据查看的APP,可以随时查看基金预期收益和基金统计数据和财经新闻。首页数据页新闻页目前还是初步开发阶段,后面慢慢完善,给个start鼓励鼓励我吧项目地址,欢迎star...
2020-08-11 16:29:24
281
原创 Anr常见的几种日志导出方式
Anr常见的几种分析方式1.首先为什么会产生anrInput事件超过5s没有被处理完Service处理超时,前台20s,后台200sBroadcastReceiver处理超时,前台10S,后台60s2.怎么获取anr的日志1.通过adb pull data/anr/traces.txt导出/data/anr/trace.txt文件,查看anr发生的进程和发生原因2.有些手机没有办法获取到traces.txt文件,可以通过adb bugreport这个过程比较慢,有些低版本需要指定生成路径
2020-05-20 19:21:30
1104
原创 Android 常用gradle脚本
app打包重命名applicationVariants.all { varint -> varint.outputs.all { if (varint.buildType.name.equals("release")) { def releaseApkName = "123"+app_testVersionName+".apk" ...
2019-06-26 10:25:29
324
原创 ItemDecoration常见使用
1、实现分割线效果适用于LinearLayoutManager 和 GridLayoutManagerimport android.content.Context;import android.content.res.Resources;import android.graphics.Canvas;import android.graphics.Color;import android...
2019-01-09 16:54:29
926
原创 Git工作中常用命令
Git常用命令Git工作流程workspace: 本地的工作目录index:缓存区域,临时保存本地改动local repository: 本地仓库,只想最后一次提交HEADremote repository:远程仓库Git常用命令Git 本地分支管理查看、切换、创建和删除分支git br -r # 查看远程分支git br <new_branch&...
2019-01-03 15:07:57
128
原创 发布jar包到maven服务器
1、下载apache_maven,并配置环境变量2、在APACHE_MAVEN_HOME/conf/settings.xml servers标签下加入如下配置:<server> <id>AutelAndroid</id> ID <username>admin</username> ...
2018-12-27 09:04:39
388
原创 设计模式之单例模式
单例模式定义确保某一个类只有一个实例,并自行实例化并向整个系统提供整个实例单例模式的使用场景确保某一个类只有一个实例的场景,避免频繁创建多个对象消耗系统资源,或者某种类型的对象有且只应该有一个,例如访问IO或者数据库单例模式的结构图在单例模式的实现过程中,需要注意如下几点:(1)单例类的构造函数为私有;(2) 提供一个自身的静态私有成员变量;(3) 提供一个公有的静态工厂方法。...
2018-12-22 15:41:15
140
原创 OpenAlpr车牌识别功能实现
关于OpenALPROpenALPR是一种使用C ++编写的开源自动车牌识别库,支持多个国家多个地区的车牌。而最近公司想做车牌识别这一块业务,要支持全球多个国家的车牌,于是写了个Demo测试OpenAlpr的接口(有2000次免费机会)。功能实现import android.app.Activity;import android.content.ContentValues;import ...
2018-12-18 20:30:26
3288
原创 设计模式学习
设计模式简介设计模式是一套被反复使用的、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了重用代码、让代码更容易被他人理解、保证代码可靠性。 合理的使用设计模式可以让代码结构逻辑更加清晰,后期维护也更加简单,当然代码如果被过度的设计也会带来适得其反的效果。设计模式主要分为三种类型创建型模式====================创建型模式(Creational Pa...
2018-12-13 10:21:42
118
转载 最全的ADB命令合集
ADB命令大全转载于此 GitHub 仓库 。注: 有部分命令的支持情况可能与 Android 系统版本及定制 ROM 的实现有关。基本用法命令语法为命令指定目标设备启动/停止查看 adb 版本以 root 权限运行 adbd指定 adb server 的网络端口设备连接管理查询已连接设备/模拟器USB 连接无线连接(需要借助 USB 线)无线连接(无需借助...
2018-12-01 14:22:04
3989
原创 Camera对焦的几种方式
自动对焦1、通过Camera的AutoFocusCallbackcamera.cancelAutoFocus(); //每次对焦前取消自动对焦final String currentFocusMode = params.getFocusMode();params.setFocusMode(Camera.Parameters.FOCUS_MODE_AUTO);camera.setPara...
2018-12-01 14:10:07
4026
原创 OpenGL学习(一)
1、创建activityimport android.os.Bundle;import android.support.annotation.Nullable;import android.support.v7.app.AppCompatActivity;import test.audio.com.opengldemo.render.Circle;public class MainA...
2018-11-30 16:01:10
183
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人