Box 黑科技 —— 支持手机端反编译 !

简介: Box 黑科技 —— 支持手机端反编译 !

前言


有将近一个月没有更新文章了,一方面在啃 AOSP ,消化起来确实比较慢。在阅读的过程中,有时候上来就会陷入源码细节,其实这是没有必要的。刚开始更多的应该从整体脉络上去理解,摸清整个流程之后再去有针对性的看某些细节,才会事半功倍。下一篇应该会带来 Activity 启动流程分析


除了啃 AOSP 之外,剩下的时间都花在了开源项目的维护和更新上。一个是 Wanandroid 应用,主要技术栈是 Kotlin 、 MMVM 、 协程 ,开源了一段时间,一度觉得自己的 MVVM 写的还不错。在阅读相关架构文章以及 Google 重构了 plaid 之后,发现了自己的框架在 分离关注点 方面存在的一些问题。主要针对架构方面做了一些调整,目前来看还是比较符合 MVVM 的思想的。另外,也新增了网页版的新功能 “广场”。


说一说 Wanandroid 后续的更新计划,第一点,Jetpack 的深anzhuangb入使用。包括 Navigation 单 Activity 实现,Room ,Page 等类库的使用。第二点,完成一个 Jetpack Compse 版本,虽然 Compose 还是预览版,但我坚定看好 Compose,实在忍不住不去尝试一下,其实也已经在开发中了,完成了一些简单页面,有在学习 Compose 的朋友可以交流交流,项目地址在这里 -》 Wanandroid-Compose


Box V0.2.0


另一个开源项目就是今天要说的 Box 了,说来惭愧,已经好几个月没有更新了。这次带来了一个 "黑科技",对,没错,就是堪比 小米手机八项黑科技手机端反编译  功能。熟悉反编译的同学应该对这个功能很熟悉,但都是在 PC 上操作的,ApktoolJadx 等开源工具都提供了 PC 端的命令行操作或者图形界面。其实第一次看到手机端反编译功能是在 Trinea 的 Android 开发助手 上,当时感觉挺惊艳的,也比较好奇是如何实现的。anzhuangb

其实很简单,Apktool 和 Jadx 都是开源的,移植到 Android 上就可以了。大致浏览了一下 Jadx 源码,就开始了移植工作。鉴于 Jadx 源码的优秀设计,整个移植过程也没有费太大功夫。结合  Android 开发助手的 UI 设计,不难看出 Trinea 也是移植了 Jadx 源码。 box_app_managerbox_app_manager 下面的 gif 简单展示了反编译功能的使用:


image.png

nager

除此之外,针对之前的 当前 Activity 功能做了一些完善,主要替换了悬浮窗的依赖库,现在使用的是 EasyFloat。这是一个 Kotlin 版本,且更加稳定。下面也用一个 gif  演示一下该功能:

image.png

另外,在更新 AndroidUtilCodeKTX 的文件工具类部分时,为了能总结的尽量完整,就在 Box 里面增加了 文件管理 功能,界面相对简陋,但功能还算完整,后续会继续完善,大家可以提提 issue 。


针对 应用管理 功能,新增了对本地安装包文件的支持。无需安装也能直接查看各种应用信息。关于其中一个查看 AndroidManifest.xml 文件的功能,建议阅读 Android逆向笔记 —— AndroidManifest.xml 文件格式解析

image.png


相关文章
|
2月前
|
XML Java Android开发
FFmpeg开发笔记(五十二)移动端的国产视频播放器GSYVideoPlayer
GSYVideoPlayer是一款国产移动端视频播放器,支持弹幕、滤镜、广告等功能,采用IJKPlayer、Media3(EXOPlayer)、MediaPlayer及AliPlayer多种内核。截至2024年8月,其GitHub星标数达2万。集成时需使用新版Android Studio,并按特定步骤配置依赖与权限。提供了NormalGSYVideoPlayer、GSYADVideoPlayer及ListGSYVideoPlayer三种控件,支持HLS、RTMP等多种直播链接。
97 18
FFmpeg开发笔记(五十二)移动端的国产视频播放器GSYVideoPlayer
|
2月前
|
移动开发 前端开发 JavaScript
JS配合canvas实现贪吃蛇小游戏_升级_丝滑版本_支持PC端和移动端
本文介绍了一个使用JavaScript和HTML5 Canvas API实现的贪吃蛇游戏的升级版本,该版本支持PC端和移动端,提供了丝滑的转向效果,并允许玩家通过键盘或触摸屏控制蛇的移动。代码中包含了详细的注释,解释了游戏逻辑、食物生成、得分机制以及如何响应不同的输入设备。
58 1
JS配合canvas实现贪吃蛇小游戏_升级_丝滑版本_支持PC端和移动端
|
2月前
|
Linux 开发工具 Android开发
FFmpeg开发笔记(五十三)移动端的国产直播录制工具EasyPusher
EasyPusher是一款国产RTSP直播录制推流客户端工具,支持Windows、Linux、Android及iOS等系统。尽管其GitHub仓库(安卓版:https://github.com/EasyDarwin/EasyPusher-Android)已多年未更新,但通过一系列改造,如升级SDK版本、迁移到AndroidX、指定本地NDK版本及更新Gradle版本等,仍可在最新Android Studio上运行。以下是针对Android Studio Dolphin版本的具体改造步骤。
59 3
FFmpeg开发笔记(五十三)移动端的国产直播录制工具EasyPusher
|
4月前
|
前端开发 小程序
【微信小程序-原生开发】实用教程20 - 生成海报(实战范例为生成活动海报,内含生成指定页面的小程序二维码,保存图片到手机,canvas 系列教程)
【微信小程序-原生开发】实用教程20 - 生成海报(实战范例为生成活动海报,内含生成指定页面的小程序二维码,保存图片到手机,canvas 系列教程)
409 0
|
5月前
|
Java
电脑玩诺基亚手机jar游戏java-涂鸦地带举例
电脑玩诺基亚手机jar游戏java-涂鸦地带举例
73 0
倒计时15分钟-兼容ios手机效果demo(整理)
倒计时15分钟-兼容ios手机效果demo(整理)
|
存储 机器人 API
网络游戏简单化!PUN插件了解一下?(Unity3D)
Photon Unity Networking (PUN)是一种用于多人游戏的Unity软件包。 灵活的匹配可以让玩家进入房间,可以通过网络同步对象。 快速和可靠的通信是通过专用的Photon 服务器完成的,因此客户端连接不需要1对1。
|
人工智能 安全 机器人
来自一个插件的疯狂夸赞,VS Code「彩虹屁」插件问世,网友:我想要郭德纲版
听说有人开发了「虚拟程序员鼓励师」,安装使用后的我疯狂捶墙,导致我家变成了单间
257 0
来自一个插件的疯狂夸赞,VS Code「彩虹屁」插件问世,网友:我想要郭德纲版
|
数据采集 算法 测试技术
|
监控 数据处理 开发工具