- 博客(22)
- 收藏
- 关注
原创 Android12L 微信分栏模式(activity嵌入)适配支持
实际上就是修改你设备的品牌名,可能改成三星的也可以,没测试。改完这个以后微信就可以分栏显示了,以上是在android原生源码上测试的。如果改完之后无效,你需要查阅这块的源码,看看是不是状态栏和导航栏等修改导致了无效。这个时候整编代码之后,像原生系统设置,QQ等应用(应用本身适配过的)都已经是上图的样子了,但是微信还没有生效。在大部分品牌手机上,只要你的android系统超过Android12L的,微信基本上都支持分栏功能,即如下图所示。我们用的是rk3588的平台。如何在自研的硬件设备上实现这种效果呢?
2024-02-22 16:29:55
274
原创 Framework死锁的问题总结
综上所述,由于对死锁这个问题没有太多经验,导致问题解决起来没有头绪,花费了较多人力和时间。这次的事故的经历丰富了我们的开发经验,填补了死锁这也故障的空白。我们后续实现业务逻辑时要时刻将这一重要经验考虑进去,防止再次发生这种情况,以及再次发生时为我们如何解决死锁提供了宝贵的经验。
2023-12-18 09:53:09
1068
原创 Android12 framework部分第三方APP断电后再次打开闪退的问题
有一些第三方app如鲜时光,腾讯视频等会有这么一个场景,打开这些APP之后突然断电,再次上电,这些APP打开之后就闪退无法再次打开了。一般情况下,对于我们自研的APP来说,在write()方法后close()数据流之前sync()一下就行了,比如系统默认设置在设置12/24小时制或者是设置静态IP动态IP后就会出现这种情况,也可以用这种方式解决。但是这种第三方的,我们无法控制,而且这两个APP还比较特殊,它们都是用了FilterOutputStream写数据的,所以需要在这个类里进行修改。
2023-12-18 09:41:03
689
1
原创 Android12 framework适配竖屏应用在平板上对话框显示不全问题
如果你遇到竖屏应用对话框显示不全这个问题,可以这样修改。思路是重新计算一下对话框的宽度,他显示是基于屏幕的宽度来的。大屏设备上有部分app对话框显示不全,比如这样。
2023-12-14 11:12:04
650
1
原创 Android12 通过开机脚本预装APK不占用super分区
系统定制往往需要预装APK,这种文章网上很多,但我们的需求是系统通过一个脚本开机后去安装apk包并且不占用super分区。这里介绍一下这种方法,分为selinux打开和关闭两种情况,打开时权限要求严格需要做一些尝试。说明:以下修改的路径跟源码实际路径并不一致,因为我们代码做了很多修改和overlay, 你只需要找到对应代码理解修改的原理,自行添加即可。有问题随时留言。
2023-12-11 10:54:49
1203
1
原创 Android12 解决应用使用Settings异常断电数据丢失的问题
后者通过精确控制需要保护的目录来减少性能损失,但是缺点是要非常清楚哪些目录需要保护,并 且不同文件系统的命令和标志都不一样,需要把你可能用到的所有文件系统的 ioctl 都写一遍,并且有 些文件系统可能不支持这种方式(f2fs 和 ext4 都是两种方式都支持,而 fat 则不支持 ioctl 方式)。在Android12中,Settings写操作在以下路径下,它是采用了AtomicFile的方式,这种方式可以避免断电文件损坏,但是避免不了刚写入的数据丢失。修改在最下面,主要修改底层文件系统。
2023-11-08 09:40:08
1511
3
原创 Android12 Framework修改平板上竖屏应用宽高比
在安卓平板上竖屏应用一般宽高比在1.7左右,导致竖屏应用显示特别窄,就容易出现很多适配问题,如微信登录和注册按钮叠在一起。此时就需要能够修改竖屏应用的宽高比来解决这个问题。我这种修改方法比较简单粗暴,主要起作用就是在这个地方,根据你们UI尺寸自行计算出一个合适的宽高比即可, 此修改不影响横屏应用。上图是修改前的效果。
2023-10-26 13:59:55
439
1
原创 Android12 解决预装应用获取应用大小为0的问题
最近发现有些预装的APP在原生设置-应用-存储里面显示的应用大小为0或者很小(只有kb级别)的情况,这是由于系统中对这类应用没有进行大小计算导致的,经过对代码追溯和跟踪,修改以下位置即可解决。有疑问或需求请留言。
2023-09-19 20:17:33
385
原创 [Framework]将系统APP独立在AS中开发,有提示
7.sync之后如果出现以下绿色点即表明连接成功,就可以在Android Studio里面修改SystemUI2了,写代码有提示和跳转且主动保存。该命令的意思是将源码路径和项目路径软连接。即为即将要修改的SystemUI2[源码路径]创建一个快捷方式SystemUIProject[项目路径]。注意:不同的项目会有不同的报错,原因是原来的项目里面Android.bp里的编译冲突,遇到报错删除相应的报错即可。5. 修改项目中SystemUI2里面的Android.bp文件,将其中的。有疑问的地方请留言。
2023-09-07 09:59:20
206
原创 Android12 根据包名授予安装未知应用权限
有个定制APP打开之后就请求安装未知应用权限,现在想要默认授予其权限不弹窗。1是在AppOpsManager中全部授权,2是在PackageInstallerActivity中修改,这个是应用想要安装时弹出的,以上两种都不满足我的需求。代码写的比较简单,这部分需要再你自启动的service里面调用。前言:有需求或者问题,请留言私信,如果能够给你提供思路,我会尽快回复。1.找到开机自启动的一个service或者应用,给他授予相关权限。2.建立一个白名单维护需要提前授予权限的包名列表。
2023-08-30 10:51:11
1577
原创 Android12 Framework屏蔽鼠标左/右键滑动事件
支持鼠标的Android设备,左键和右键都能拖动空间或者是都响应系统手势。现在需求是想屏蔽掉鼠标右键的滑动事件,仅响应鼠标左键滑动。AMOTION_EVENT_BUTTON_TERTIARY 辅助按钮。AMOTION_EVENT_BUTTON_SECONDARY 右键。AMOTION_EVENT_BUTTON_PRIMARY 左键。要修改该问题需要了解以下几个常量。屏蔽右键的move事件。
2023-08-21 14:39:07
516
1
原创 Android12 Framework屏蔽APP动态权限弹窗自动授权
有时候需要对非系统级别APP进行动态权限弹窗屏蔽,只需要修改以下几个地方就可以了。
2023-08-01 21:00:58
1687
1
原创 Android12 裁剪系统自带APP脚本编写
有时候需要Android系统需要裁剪APP,单独屏蔽代码不够灵活不好管理。这时候最好是自己写个.mk在里面添加要删除的APP比较合理。
2023-05-06 16:57:47
347
原创 Android12 系统button默认值修改示例
路径:package\apps\Settings\src\com\android\settings\display\LockscreenClockPreferenceCon。在 /frameworks/base/packages/SettingsProvider/src/com/android/providers/settings/Dat。在 /frameworks/base/packages/SettingsProvider/res/values/defaults.xml 中添加。
2023-04-28 18:10:36
280
1
原创 Android12+RK3588 手机连上设备蓝牙后就断开
现象是:Android手机和部分苹果手机连接RK3588设备后,几秒之后自动断开。
2023-04-25 14:39:31
815
6
原创 Android12 获取音频输出列表&设置音频输出通道
有个需求是APP端能够获取所有音频输出列表,研究了很长时间源码,发现只有这个API合适。这个API能够获取到设备上所有可用的输出,且APP可以调用。
2023-04-21 14:59:03
3243
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人