ARTist 开源项目使用教程
1. 项目介绍
ARTist 是一个灵活的开源 instrumentation 框架,专为 Android 应用和 Java 中间件设计。它基于 Android 运行时(ART)的编译器,在设备上的编译过程中修改代码。与现有的 instrumentation 框架相比,ARTist 保留了应用的原始签名,并在指令级别上操作。
此仓库代表了 ARTist 生态系统的核心,是 instrumentation 框架的实际实现。它集成到 AOSP 的 Android 运行时(ART)项目中,创建了一个专门化的设备上 dex2oat 编译器版本,并为开发者提供了模块 API,以完全控制目标 Java 源代码,该源代码以编译器的中间表示形式提供。ARTist 允许最终用户使用已有的模块,开发者创建自己的应用和 Android 系统的 instrumentations,以及研究人员分析和扩展应用和系统行为。
ARTist 支持两种部署方式:首先,作为一个常规应用使用我们的 ArtistGui 项目,允许在 rooted 设备上进行非侵入式应用 instrumentation;其次,作为定制 ROM 的系统编译器,可以额外地 instrument 系统服务器(包管理服务、活动管理服务等)和 Android 框架类(boot.oat)。它支持 Android 6.0(含)之后的版本。
2. 项目快速启动
以下是在本地环境中快速启动 ARTist 的步骤:
首先,确保你的开发环境已经配置好 Android SDK 和 NDK。然后,克隆仓库并按照以下步骤操作:
git clone https://github.com/Project-ARTist/ARTist.git
cd ARTist
# 编译 ARTist
# ...
# 将编译好的文件部署到 Android 设备上
# ...
请注意,上述命令仅为示例,实际编译步骤会根据你的开发环境和项目配置有所不同。
3. 应用案例和最佳实践
- 案例 1: 使用 ARTist 对 Android 应用进行性能分析,监控关键方法的执行时间。
- 案例 2: 利用 ARTist 修改系统级服务的行为,以增强系统安全。
最佳实践:
- 在开发模块时,确保代码的版本独立性,以便在不同的 Android 版本上兼容。
- 尽量使用 ARTist 提供的 API,避免直接修改底层实现。
4. 典型生态项目
ARTist 的生态系统中包括了以下几个典型的项目:
- ArtistGui: 一个图形用户界面,用于在 rooted 设备上进行应用 instrumentation。
- ARTist SDK: 用于简化模块开发的专用 SDK,即将在 beta 版本中提供。
以上是关于 ARTist 开源项目的简要教程,希望对你有所帮助。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0190
cann-learning-hubCANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。Jupyter Notebook0113
Step-3.7-FlashStep-3.7-Flash是一个拥有 1980 亿参数的稀疏混合专家(MoE)视觉语言模型,由 1960 亿参数的语言主干网络和 18 亿参数的视觉编码器组合而成,具备原生图像理解能力。Python00
JoyAI-EchoJoyAI-Echo,这是一个独立的、仅用于推理的版本,旨在实现分钟级多镜头音视频生成。它采用了经过蒸馏的DMD生成器、配对的跨模态记忆以及故事级别的一致性。其性能的核心在于,一个跨模态视听记忆库能够在长达五分钟的视频中保持角色外观和语音音色的一致性。同时,一个训练后处理流程将基于记忆的强化学习与分布匹配蒸馏相结合,实现了7.5倍的速度提升,显著增强了视觉质量和对齐效果。00
omega-aiOmega-AI:基于java打造的深度学习框架,帮助你快速搭建神经网络,实现模型推理与训练,引擎支持自动求导,多线程与GPU运算,GPU支持CUDA,CUDNN。Java04
llm-universe本项目是一个面向小白开发者的大模型应用开发教程,在线阅读地址:https://datawhalechina.github.io/llm-universe/Jupyter Notebook08