Android系统开发实战系列
实践出真理
YL凡尘
Android Room 定制
展开
-
Android系统之APP添加插入U盘读写权限(已测试Android7.1和Android12)
我们加入这个权限后,多媒体应用就可以在U盘或者sd卡目录下面创建和删除文件了,由上面可以看出这个就是media和dscard的管理权限。但是还是不行,不过我们在源码权限文件platform.xml发现了这个权限。原创 2023-12-21 15:36:28 · 539 阅读 · 1 评论 -
Android7.1之定制鼠标右键为返回键
在Room定制产品中,我们开发板有USB接口,经常要接外设,比如鼠标、键盘之类的,很多时候客户需求将鼠标右键定制成返回键,那就需要我们改源码定制功能,不过很多时候原厂就已经帮你写好了,但是也是有意外情况需要加,这里就先记录下。原创 2023-10-13 15:49:24 · 152 阅读 · 0 评论 -
Android4.4之PhoneWindowManager定制遥控按键长按和短按两个功能
【代码】Android4.4之定制遥控按键长按和短按两个功能。原创 2023-10-10 15:28:21 · 294 阅读 · 0 评论 -
Android4.4之解决在原生布局里面添加控件找不到id问题
解决在Android源码原生布局里面添加自定义布局或者控件找不到id的问题原创 2023-09-16 10:14:08 · 302 阅读 · 0 评论 -
Android系统开发之在PMS里面限制应用的卸载
在日常开发中,尤其是定制ROM,有些设备里面的应用不想被卸载,就需要限制用户,当然如果将不能卸载的应用预置到system/app目录下也不会被卸载,但是我们还有其他方式,比如在PMS里面假如卸载限制,这样也可以实现这个功能,而且adb 命令或者代码都不能卸载该应用,接下来我们看下实现方法。这只是单一的功能,我们可以将需要限制的应用包名存放一个集合,再通过比对的方式限制。原创 2023-07-26 13:57:43 · 159 阅读 · 0 评论 -
Android系统开发之定制根据包名清除缓存功能
我们根艺借鉴的地方是这个api。原创 2023-07-25 14:31:03 · 180 阅读 · 0 评论 -
RK3128之Settings定制红外遥控开关功能
在日常Android系统开发中,有些客户要求在Settings设置界面添加红外遥控开关功能,比如开关开启,遥控有作用,开关关闭,遥控就没作用。要实现这个功能我们就要去找输入事件了,通过找到按下遥控哪里上发的事件,然后我们拦截他不让这个实践上发到上层就可以了,接下来我们看看以下源码。以上代码目录:\frameworks\base\services\input\EventHub.cppAndroid系统是基于linux系统这就不用多说了,大家都知道,而输入事件对应的系统则是Linux系统中的子系统,很重要原创 2022-11-18 09:25:17 · 915 阅读 · 0 评论 -
RK3128系列之Android7.1去掉开机铃声并弄成可配置的
只要将其中控制开机语音的属性设置成0就可以了,但是我们现在要做成可配置的,因为在做1系统固件事会遇到不同客户跟不同需求,所以我们要做成可配置的,方便后期生产固件能针对不同需求配置,通过以上代码可知他是资源文件里面配置的,属性是def_wireless_charging_started_sound。通过全局查找,我们可以找到的是,他是在SettingsProvider系统应用中配置的,好了,这里介绍就到此结束了,后面还会继续更新。下面我们来看看铃声文件是在哪里配置的。1.第一步找到播放开机语音的位置。原创 2023-04-19 15:41:55 · 311 阅读 · 0 评论 -
Android系统之在AMS里面为指定应用拦截WIFI网络状态广播
这样就导致刚开起网络的时候会造成卡顿现象,这就说到了我们的要求,就是不要让某个应用监听到。网络状态广播,我们一打开网络,它们就监听到网络打开后就请求数据,网络请求本来就是耗时操作。在日常系统定制开发中,有时候有些应用会开启个服务去监听我们系统的广播,假如他们监听的是。如果我们要去拦截广播,肯定要去看看是在哪里发的广播,然后我们就可以在这里拦截了。在上面一个地方假如如下代码就可以了,上面已有标注。我们系统底层发的广播,这就需要我们去拦截这个广播。原创 2023-07-15 09:17:21 · 234 阅读 · 0 评论 -
Android PMS之禁止某个应用安装
在Android系统定制开发中,我不知道该功能有没有用在商用的产品中,最近在看PMS的源码,PMS里面包含了应用的安装、卸载等功能,那我们能不能在PMS里面去限制某个应用的安装或者卸载呢?答案是当然能,因为整个系统的应用安装都要走PMS,我们只需要在PMS里面拦截安装,即可实现此功能,下面上代码。加上上面拦截代码,即可实现应用安装限制,adb 安装或者系统安装都可,以上可能还有需要完善的地方,欢迎留言!原创 2023-07-24 15:19:36 · 348 阅读 · 0 评论 -
RK3128之adb修改SystemProperties属性配置
打开build.prop找到对应的属性,修改值然后保存就可以了。目录:/system/build.prop。最后一步重启就可以了。原创 2023-05-16 10:32:32 · 587 阅读 · 0 评论 -
Android之Handler机制流程解析
Handler流程分析第一步:初始化Handlerprivate Handler mHandler=new Handler(){ @Override public void handleMessage(@NonNull Message msg) { super.handleMessage(msg); }};这个是new了一个对象,实例化了Handler,我们再看构造函数里面的实现:public Handler() { //这里注意传入的CallB原创 2021-06-10 16:53:51 · 410 阅读 · 0 评论