- 博客(91)
- 资源 (3)
- 收藏
- 关注
原创 活在当下
史铁生写过这样一段话:“我四肢健全时,常抱怨周围环境糟糕,瘫痪后,怀念当初可以行走奔跑的日子。几年后长了褥疮,怀念起前两年安稳坐在轮椅上的时光;后来得了尿毒症,怀念当初长褥疮;又过了一些年,要透析,清醒的时间很少,怀念尿毒症的时候。大仲马也讲过同样的话,他说人生无所谓幸与不幸,只是两种不同境遇的比较罢了。永远记住,活在当下。
2024-01-08 15:56:12 563 2
原创 android11 Framework Selinux 添加设备节点问题修改及具体实现
file_contexts文件修改时,最后一行必须要有一个空行,否则会编译不过。========================================================file_contexts 最后一行修改不是空行,怎么都编不过,搞了半天,气死了~~FAILED: out/target/product/ums9620/obj/ETC/file_contexts.bin_intermediates/file_contexts.bin**Error: could not l
2022-04-21 16:58:29 4601 1
原创 Android11 Framework Vendor下自定义系统服务
vendor 添加sepolicy, service, Android.bpvendor/testos/sepolicy/app.tevendor/testos/sepolicy/service_contextsvendor/testos/sepolicy/service.tevendor/testos/mdm/java/android/test/mdm/IMdmManager.aidlvendor/testos/mdm/java/android/test/mdm/MdmManager.jav..
2022-03-23 14:22:54 5144 1
原创 Android Selinux 应用读写设备节点
写入设备节点 final String FILE_PATH = "/sys/dev"; private void writeSysFile(){ final File file = new File(PATH_REPORT) ; String cmd = "1"; FileOutputStream fos = null; try{ fos = new FileOutputStream(file);
2022-01-22 19:47:33 3749
原创 2018 Android 文字转语音(中文) TextToSpeech+科大讯飞语音引擎3.0
最近项目中需要用到文字转语音。 本来是想使用朗读女生成的声音文件放到项目资源中进行播放。 但是产品要求改成动态的。于是就用了Google为我们封装好的类TTS,即TextToSpeech:大家可以看下详细文档。代码其实不多,但是写完之后测试就有问题,没声音,,,,看了之后才知道谷歌这个官方api不支持中文。。很Tmd. 给大家科普下: 文字转语音的引擎: com.svox...
2018-09-06 14:19:09 21044 13
原创 MasterClear:Can‘t perform master clear/factory reset:IOException:Reboot failed (no permissions?)
在frameworks/base/core/java/android/os/RecoverySystem中的bootCommand()抛出IOException(“Reboot failed (no permissions?关闭默认Selinux策略。
2024-09-03 13:54:05 211
原创 Android 13 aosp 恢复出厂设置流程
MasterClearReceiver收到广播调用RecoverySystem重启设备擦除用户数据。调用RecoverySystemService中rebootRecoveryWithCommand。Settings中的MainClearConfirm发送FACTORY_RESET广播。调用PowerManager reboot(REBOOT_RECOVERY)bootCommand执行–wipe_data。
2024-09-03 13:42:51 443
原创 android 13 aosp Failed to scan /system/app/xxx:Error unpackaging native libs for app, errorCode=-113
NO_MATCHING_ABIS: 是由于使用了native libraries。libraries不支持当前的cpu的体系结构, 模拟器使用的x86的。解决办法,在预置应用添加。
2024-06-05 15:36:15 295
原创 Linux 通过关键字查找文件
find 路径 -name “文件名” | xargs grep -n “关键字”xargs 是给命令传递参数的一个过滤器,也是组合多个命令的一个工具。-n 是可以显示该查找内容所在的行号。find 路径 -name “文件名”通过关键字查找当前目录下的所有mk文件。查找当前目录下的所有mk文件。
2024-05-15 11:01:40 1195
原创 Android 13 aosp 默认关闭SELinux
将IsEnforcing()方法中默认返回值修改为false即默认关闭SELinux。unused fun,注释掉(测试仅限于ud版本)
2024-05-08 18:02:21 928
转载 Android aosp 自定义 SELinux
通常情况下,您不能直接修改 system/sepolicy 文件,但您可以添加或修改自己的设备专用政策文件(位于 /device/manufacturer/device-name/sepolicy 目录中)。虽然可以在设备上运行更高/更新版本的平台(框架),但反之并不成立;Android 6.0 通过降低我们政策的宽容度强化了系统安全,从而实现更好的用户隔离和 IOCTL 过滤、降低可从设备/系统之外访问的服务面临的威胁、进一步强化 SELinux 域,以及高度限制对 /proc 的访问。
2024-05-08 17:57:18 313
原创 Android 13 aosp SELinux: The following public types were found added to the policy
【代码】Android 13 aosp SELinux: The following public types were found added to the policy。
2024-04-25 11:05:15 527 2
原创 Android 13 aosp 预置三方应用apk
Android.mk 中的模块定义 您可以使用 LOCAL_MULTILIB 变量将 build 配置为适用于 32 位/64位架构,并替换全局 TARGET_PREFER_32_BIT 变量。构建系统根据模块类和其他LOCAL_ 变量(如 LOCAL_MODULE_TARGET_ARCH 和 LOCAL_32_BIT_ONLY)决定要构建哪种架构。“first” 仅构建第一个架构(在 32 位设备中构建 32 位架构,在 64 位设备中构建 64 位架构)。“32” 仅构建 32 位架构。
2024-04-07 16:42:31 1384
原创 Android 13 aosp emulator 报错 This user doesn‘t have permissions to use KVM (/dev/kvm)
Andoird 源码编译完成启动模拟器报错。
2024-03-29 14:16:42 417 1
原创 Android com.android.tools.r8.internal.Ub: Absent Code attribute in method that is not native or abst
Android 项目导入 framework.jar编译报错 com.android.tools.r8.internal.Ub: Absent Code attribute in method that is not native or abstract。implementation files 修改为 compileOnly files。
2024-03-29 14:09:58 1157
原创 Android AOSP源码编译之 depends on//art/libnativeloader: which is not visible to this module
在libnativeloader 库中 Android.bp visibility[] 添加 prebuilts/sgq/satellite。prebuilts/sgq/satellite/ 使用了libnativeloader该库,但是没有它的访问权限, 需要在。libnativeloader 库中添加 prebuilts/sgq/satellite 目录访问权限.
2024-03-21 17:21:19 416
原创 Android AOSP源码编译之 dlopen failed:library is not accessible for the namespace “classloader-namespace“
项目对应的Android.bp shared_libs 添加 libnativeloader.so。
2024-03-21 17:16:37 606
原创 Android 卫星通信计算方位角,仰角,极化角
需求描述: 已知手机的经纬度和高度信息,需要通过公式计算出手机收星的最优方位和仰角,用以调整UI界面显示,以便引导用户实现和当前卫星方位和仰角的对准,达到快速入网的目的。
2024-03-13 11:20:56 810 2
原创 Android 仿信号格子强度动画效果实现
计算圆角矩形的位置:为了居中矩形,你需要计算其左上角的 x 和 y 坐标。要使圆角矩形居中,你需要计算矩形的位置,这通常涉及到确定矩形左上角的位置(x, y),这样矩形就可以在其容器中水平和垂直居中。绘制圆角矩形:使用 Canvas 的 drawRoundRect 方法,传递计算出的 x、y 坐标,矩形的宽度和高度,以及圆角的半径。确定容器的尺寸:首先,你需要知道绘制圆角矩形的容器的宽度和高度。这通常是视图的宽度和高度。计算圆角矩形的尺寸:确定你想要绘制的圆角矩形的宽度和高度。
2024-02-22 17:58:15 624
原创 Android 11 访问 Android/data/或者getExternalCacheDir() root方式
如果手机安卓版本为Android10的时候,可以在AndroidManifest.xml中添加下列代码。需求要求安装三方应用ExternalCacheDir()下载下来的apk文件。以此禁用分区存储,但这在Android11及以上版本不起作用。第二种:系统服务代码。
2024-02-06 10:49:06 1729
原创 Android 11 访问 Android/data/或者getExternalCacheDir() 非root方式
SAF 提供了一种标准化的方式来让应用程序请求访问其他应用的文件和目录。要使用 SAF 请求访问 Android/data 目录。如果手机安卓版本为Android10的时候,可以在AndroidManifest.xml中添加下列代码。需求要求安装三方应用ExternalCacheDir()下载下来的apk文件。使用 Storage Access Framework 请求访问权限。以此禁用分区存储,但这在Android11及以上版本不起作用。
2024-02-06 10:43:38 1564
原创 DevEco Studio 应用手表运行 The type of the target device does not match the deviceType configured in the m
在 , 添加。
2024-01-16 16:13:20 1410
原创 Android系统的启动流程
在Android系统中,DVM和ART、应用程序进程以及运行系统关键服务的SystemServer进程都是由Zygote进程来创建的,我们也可以将其称为孵化器。由于Zygote进程在启动时会创建DVM或ART,因此通过fork而创建的应用程序进程和SystemServer进程可以在内部获得一个DVM或ART的实例副本。Launcher是一个应用程序,用来显示系统中已经安装的应用程序。init进程是Android系统中用户空间的第一个进程,进程号为1,是Android系统启动流程中的一个关键进程。
2024-01-08 16:07:19 529
碎片嵌套+zbar
2017-11-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人