分类
标签
排序
Android ADB 使用笔记
ADB 工作原理 当启动某个adb客户端时,该客户端会先检查是否有adb服务器正在运行,如果没有则启动服务器进程。服务器会在启动后与本地TCP端口 5037 绑定,并监听adb客户端 发出的命令。 服务器...
Android平台从上到下,无需ROOT/解锁/刷机,应用级拦截框架的最后一环,SVC系统调用拦截。
Android平台从上到下,无需ROOT/解锁/刷机,应用级拦截框架的最后一环 —— SVC系统调用拦截。 Github: https://www.github.com/iofomo/abyss 由于我们虚拟化产品的需求,需要支持在普通的Andro...
简单实现Android的本地文件读写,暨将List数据保存到Json文件中并读出
一、让我们从引入依赖开始 //将这两行代码添加到以上位置,其他的一般不用管 implementation 'com.google.code.gson:gson:2.8.5' implementation 'com.tencent:mmkv:1.2.13' 二、一个简单实现 ....
Java方法链调用以及在JVM和安卓DalvikVM下的区别
目录 方法链 字节码与 Smali 下的编译结果 总结 方法链 方法链(Method Chaining),也被称为命名参数法,是在面向对象的编程语言中调用的调用多个方法的通用语法。每一个方法返回一个对象,在...
鸿蒙开发 – 数据持久化 Preferences (内存存储) (封装)
这篇文章介绍鸿蒙中的 Preferences,它是一种轻量级存储方式,数据存储在内存中,用于存储少量的数据。 可以执行 flush() 方法将内存中的数据写入到磁盘文件,保证下次重启后数据可以继续使用,...
鸿蒙开发 – 支持导出,跨文件使用的自定义样式 AttributeModifier
我们在自定义组件的时候,无论是用 @Styles 还是 @Extend,都很难真正做到独立的封装样式,因为这两者都不支持导出,不可以跨文件调用 这篇文章主要介绍一个接口 AttributeModifier,它很好的解...
鸿蒙页面开发 – 扩展组件样式 @Extend
这篇文章介绍一个装饰器 @Extend,它的主要作用是:用于扩展原生组件的样式 语法 @Extend(UIComponentName) function functionName { ... } 定义规则: UIComponentName:组件名称,例如 Text、...
鸿蒙页面开发 – 组件复用样式 @Styles
这篇文章介绍一个装饰器 @Styles,它的主要作用是复用样式 当多个组件都有相同的样式,如果每个组件单独设置,会造成大量重复的代码冗余。这时我们可以使用 @Styles 将这些相同样式封装成一个方...
鸿蒙开发 – 自定义组件 和 组件通信的方法
自定义组件的基本结构 @Entry @Component struct MyComponent { build(){ // ... } } build()函数 build()函数用于描述组件的UI界面,自定义组件必须定义build()函数 build() { Column() { Text...
鸿蒙 NEXT 开发中,普通对象跨线程如何传递
大家好,我是 V 哥,在鸿蒙HarmonyOS NEXT开发中,跨线程对象传递可以通过拷贝形式实现,确保两个线程的对象内容一致,但各自指向线程的隔离内存区间。以下是使用SharedArrayBuffer实现跨线程共...