重学安卓之Jetpack
第一次尝试frida
前言
大概半个月前,群里的一个小伙伴问,谁能把某电商APP的订单列表导出到电脑,有个私活,报个价。其实我对这种稍微有点了解,无非是抓包,破解。但通常App的网络请求会有一套签名验证机制,所以要想模拟出整套请求流程,也算比较复杂。和群里的讨论后,觉得用hook做合适,但群里和我一样,都是安卓开发,没有逆向工程师,首先想到的是xposed。
xposed太重
我之前倒是写过xposed,xposed缺点有两个,第一就是环境复杂,你得安装xposed环境才可以,目前都是通过virtual xposed来使用。再就是插件一但有修改,就得重启手机。不过这也带来了一个有点就是持久化,只要装进去,就一直存在。那有没有更轻量级的工具可以达到这种效果,后来在网上找到了frida。(这也好几年了,我居然不知道)
重学安卓之kotlin协程
导读
因为2021年开始做C++,之前的项目还没来得及怎么用kotlin,就直接被爸爸宣布死刑了。所以目前找工作等于需要再学一次kotlin,特别是协程,之前几乎没有了解。买了本书,再加上网上的各种文章,整理一点笔记出来。如果有和我差不多的,可以看一看
协程,协程可以理解为某种自由调度的任务,主要是对函数挂起,恢复。听起来像线程的唤醒,本质上和线程没什么关系。使用协程,我们可以以单线程的方式写多线程的代码,同时还能节省线程资源,并且能方便处理异常信息,返回结果等。我们给函数前面加一个suspend
关键字,就变成一个挂起函数,可以在函数内操作协程的挂起和恢复。其中部分内容有重复,不必理会。主要参考资料<深入理解Kotlin协程>,算是一个简单的笔记整理。
协程的API
什么是挂起
记一次编译安卓模拟器镜像
使用jenkins为android工程打包,支持多包名,改资源(优化方案)
需求
没有需求,自己看了一眼自己之前写的打包脚本,简直无法看下去。而且,产品经理的定制化需求越来越多,用shell脚本的可读性也越来越差,再加上里面一堆的sed命令,惨不忍睹。
改!!!
分析
gradle其实支持自定义参数,关于自定义参数的介绍,参考官方文档:https://docs.gradle.org/current/userguide/build_environment.html,简单说一下用到的:[Gradle properties](https://docs.gradle.org/current/userguide/build_environment.html#sec:gradle_configuration_properties):
android进程保活(掌握黑心科技)
python+selenium为你自动挂海淀驾校法陪课
OpenCV在Android NDK按需要的模块编译
前言
公司要做一个和图片有关的功能,一说图片处理,大家首先想到的就是强大的OpenCV。OpenCV很强大,官方也提供了android专用的sdk,直接将so和jar放入项目中就能使用。尽管官方推荐的也是这种方式,但有一个问题是,OpenCV的库很大,有10MB,很多公司整个APK都没有10MB,如果要把真个库都放到项目中,那还是挺大的。所以,这里就需要我们自己编译。中间折腾了好久,写个文章记录一下。
准备
下载OpenCV
地址 https://opencv.org/releases/
选择Android平台的包
这里注意了,4.0的版本,要求api level是21以上,所以,如果你的APP是要在21以下使用,不要下载这个。
3.x的版本不清楚,但我试了OpenCV 2.x的版本是api level 8以上。2.x的版本,需要自行google,官方应该已经不提供了。