标签: Android

18 篇文章

RecyclerView分析
RecyclerView A flexible view for providing a limited window into a large data set. 一个灵活的view, 用于在有限的窗口空间中展示大量的数据集。 RecyclerView 用来设计于在有限的窗口空间加载大量的数据,屏幕本身就是有限的窗口,从这个角度看,Android…
Android开发琐碎
背景 这两年主要玩Android系统与网络,对于应用层的开发有些陌生。然而现在终究是要靠应用技术吃饭,因此,借着重新学习Jetpack,做自己项目的机会,将Android应用层开发技术学习的过程记录下来, 后续再归纳整理成可读性更高的blog。 主要方针是,首要先学会如何使用, 初步理解原理,阶段性的整理成blog。 积累 AppCompatAct…
Volte漏洞分析(译)
摘要 VoLTE(Voice-over-LTE)是LTE移动网络的指定语音解决方案,其全球部署正在进行中。它将呼叫服务从传统的电路交换电信电话重塑到分组交换Internet VoIP。在这项工作中,我们在全面推出VoLTE安全之前进行了首次研究。我们在其控制平面和数据平面功能中发现了几个漏洞,这些漏洞可被利用来破坏运营网络中的数据和语音。特别是,我…
Android Gradle 学习
疑问 build.gradle 脚本中的那些DSL语言从哪里学习? 有一个博客解答了我的疑问, 但是该博客是解决了查看源码的问题。系统的学习还是得去看gradle文档。 gradle dsl document gradle 与 groovy gradle是使用groovy编写的, groovy 是脚本语言, 兼容java, 可以直接使用jdk的类。…
Android Jetpack框架
介绍 官方文档 开源的好处就是可以衍生出很多“项目官方”精力之外的优秀框架,而一些优秀框架就反哺官方团队再次集成优化。 Jetpack就是官方吸收一些优秀的框架的思想, 然后集成到官方版本并再次优化, 继而试图统一规范? 刚好我个人的项目还在初期, 所以, 使用Jetpack 来继续接下来的开发,是一举多得。 架构 jetpack 目前(2021/…
Android SELinux 系列(三) RawSocket权限提升实战
raw socket ipv6 的demo示便 基本思路 SEAndroid框架是AVC(Android Vector Cache) 使用SEAndroid修改权限, 主要就是查看调用api不成功系统的avc的日志, 定位相关的te文件, 或者添加新的te文件, 编译。 如果编译不通过, 再接着看编译的日志,定位到相应的文件,删除或屏蔽报错对应的代…
Android SELinux 系列(二) TE语法
m4及其宏编译器 m4语法文档 了解规则即可, 常用的 命令: type, allow, transit 权限: open, read, write, create 等 注意,字符串使用的是 '`, 单引号的前半部分, 和反引号(键盘左上解与~一起的键) 为何会选m4语言 通用性好 关键还是实战,m4相对于Android, 就看SEAndroid的…
Android SELinux 系列(一) 背景,作用,原理
Android SELinux android seolicy 官方文档 sepolicy.te 文件使用的是M4语言 SELinux 简析与修改 是什么 SELinux, 是为了加强系统安全 强制控制访问(MAC), 强制使用管理员定义的安全策略,基于安全上下文或标签, 鉴权所有的进程,对象和操作。用来校验服务和应用的权限。 SEAndroid …
Android插件化与组件化
技术背景 gradle 是什么,为什么,怎么做 gradle 是用来编译构建的工具, 支持多种语法。 编译构建这一行为, 也是一项工程, 有多种构建工具, 使用不同的语言, 提供不同的方式, 支持不同的工具。编译构建是生成可执行文件的前期工作。 组件式开发 组件式开发主要是为了解耦, 各模块可以独立编译,可以相互组合,相互通信。 AUC 项目分析 …
Android NDK
android ndk NDK 存在的原由: 进一步提升设备性能, 以降低延迟, 或进行密集型应用, 如游戏物理引擎 重复使用自己或其他开发者的C/C++库 NDK编程目前有三个编译系统 传统GNU makefile 的nkd-build cmake 独立工具链,用于其他编译系统集成, 或基于 configure 的项目搭配使用 先学习 ndk-b…