自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(12)
  • 资源 (3)
  • 收藏
  • 关注

原创 InputDispatcher: channel ~ Channel is unrecoverably broken and will be disposed!

但问题来了,总是莫名其妙的出现程序崩溃,而且还是native层的InputDispatcher崩溃,折磨了几天找不到原因,最后终于让我想明白了。那么这样会随机出现问题的,因为toast时调用的是launch进程的UI绘制,它会去lockCavans屏幕,而这时你又立马去对自己进程的UI进行操作,这时就会出现冲突,它无法去完成其中的某项绘制,从而造成程序的崩溃。其实在日志中就可以看出,是事件的分发机制出了冲突,后续终于我想明白了,toast是系统层的UI操作,而我自身页面的UI操作是我自身的程序进程。

2023-12-01 14:08:55 881 1

原创 Android安全机制:

自主访问控制(DAC)和强制访问控制(MAC);Android中自主访问控制是通过Linux UID/GID实现,而强制访问控制则是使用的SEAndroid!在Android中SEAndroid安全机制(MAC)与传统的Linux UID/GID安全机制(DAC)是并存关系的,也就是说,它们同时用来约束进程的权限。当一个进程访问一个文件的时候,首先要通过基于UID/GID的DAC安全检查,接着才有资格进入到基于SEAndroid的MAC安全检查。只要其中的一个检查不通过,那么进程访问文件的请求就会被拒绝。

2023-07-20 16:36:47 281 1

原创 自定义gradle插件并实现ASM字节码插桩

d.gradle打包的流程,gradle打包时即执行多个任务,如预编译,打包资源文件、编译java文件为class文件,将多个class文件打包成dex文件等。而我们自定义的gradle插件,就是在android插件执行打包的各个任务执行的前后过程中进行监听,插入自已的代码,如这次我们实现的:对生成的class文件进行字节码插桩,然后再将插桩完成的class文件重新放入原位置,这样最后生成的apk文件里的dex文件就是经过我们插桩过的代码。//在打包之前执行,即可以拿到经过编译的类的class文件。

2023-06-20 17:24:26 237 1

原创 ASM插桩修改代码

ASM:操作Java字节码的框架,按照Class文件的格式,解析、修改、生成Class,可以动态生成类或者增强现有类的功能。字节码插桩的具体实现:a.添加依赖:implementation 'org.ow2.asm:asm:7.1'implementation 'org.ow2.asm:asm-commons:7.1'b.对某个class文件进行插桩测试代码:public void test() throws IOException {​​ /**

2023-06-20 17:09:17 186 1

原创 android12.0.3源碼用第三方app替換原生Launcher

4.如果之前編譯時系統存在過原生的Launcher,就必須要將/out/target/product/下的Launcher3相關的文件或文件夾全部刪除,然後再編譯源碼:m。3.修改/build/target/product/下的handheld_system_ext.mk文件,刪除"Launcher3QuickStep "2.修改/build/target/product/下的base_system.mk文件,添加"duduCar"duduCar \ //添加此行。

2023-06-05 11:14:47 716 1

原创 Android12.0.0_r3源码添加自定义开机动画

android12源码中添加自定义开机动画

2023-05-19 09:21:19 324 1

原创 外部app與SystemUI進程aidl通信,動態控制導航欄和狀態欄的顯示/隱藏

與SystemUI進程aidl通信,動態控制導航欄和狀態欄的顯示和隱然

2023-05-15 15:10:23 142 1

原创 android_10.0.0_r41自定义驱动编译+Framework层调用_5(Framework JAVA调用)

参考文献:https://blog.csdn.net/luoshengyang/java/article/details/6568411 //罗升阳博客 Android_10.0.0_r41自定义驱动Framework Java服务1.定义AIDL接口在frameworks/base/core/java/android/app目录下创建IHelloManager.aidl文件:package android.app;​/** {@hide} */interface IHello

2023-04-08 17:14:48 254 1

原创 android_10.0.0_r41自定义驱动编译+Framework层调用_4(FrameworkJNI调用)

参考文献:https://blog.csdn.net/luoshengyang/java/article/details/6568411 //罗升阳博客。//第二个是参数(括号中为参数)和返回值,含义为:[B -- byte数组,Z -- bool, I -- int, V -- void,// Ljava/lang/String;/*在硬件抽象层中定义的硬件访问结构体,参考<hardware/hello.h>*//*通过硬件抽象层定义的硬件访问接口设置硬件寄存器val的值*//*JNI 方法表*/

2023-04-08 16:57:33 189 1

原创 android_10.0.0_r41自定义驱动编译+Framework层调用_3(自定义驱动HAL层)

/ // get_val 为HAL对上提供的函数接口。参考文献:https://blog.csdn.net/luoshengyang/java/article/details/6568411 //罗升阳博客。完成内核驱动程序后,便可以在Android系统中得到三个文件/dev/hello、/sys/class/hello/hello/val和/proc/hello。fd,是open时打开的。// 例: int fp = open("/home/test.txt", O_RDWR|O_CREAT);

2023-04-08 16:54:17 596 1

原创 android_10.0.0_r41自定义驱动编译+Framework层调用_2(自定义驱动)

在内核目录/arch/x86/configs/x86_64_ranchu_defconfig文件中添加一行:(因为我源码用的是goldfish-refs_heads_android-goldfish-4.14-gchips,而且编译用的是aosp_x86_64-eng模式,如果刷机用的是实际设备,且编译模式用的是aosp_ranchu-userdebug,就需选择内核目录/arch/arm64/configs/arm64_ranchu_defconfig)//__exit修饰词标记函数只在模块卸载时使用。

2023-04-08 16:51:12 358 4

原创 android_10.0.0_r41自定义驱动编译+Framework层调用_1(Android源码及kernel源码下载和编译)

此为基为android源码及kernel源码,并在参阅罗升阳等大牛的博客为素材,整理并测有效实现的android10源码实现的自定义驱动开发。

2023-04-08 16:41:30 244

android-libiconv-1.16

经过linux交叉编译供adnroid系统使用的iconv插件,版本为1.16

2023-05-15

signapk.jar+platform.pk8+platform.x509.pem.rar

在进行 Android 应用开发的时候,如果开发的是系统应用,那么就需要有系统签名才能正常运行,而系统应用一般是放到系统代码库中跟随系统一起编译。如果想要用 Android Studio 单独对某个开发的应用进行签名的话,有两种方式可以选择。一种方法是编译完成后使用 signApk.jar 、platform.pk8 和 platform.x509.pem 进行配合签名。第二种方法是把系统的 platform.pk8 和 platform.x509.pem 转换成为我们可以直接使用的 keystore 文件,在编译时自动签名。 获取系统可签名的keystore,获取到安卓系统签名

2020-01-10

ijkplayer0.8.8最新libs .so文件

最新ijkplayer .so 文件,最新ijkplayer .so 文件,最新ijkplayer .so 文件,

2018-04-09

xmpp服务器端介绍

介绍有关xmpp开发所应注意的内容,及如何搭建

2017-01-15

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除