From dc0a373c7a64bf97cb6c717098a980d19a221b35 Mon Sep 17 00:00:00 2001 From: Jim Wu Date: Thu, 19 Dec 2019 17:42:04 +0800 Subject: [PATCH] Update readme --- README.md | 71 +++++++++++++++++++++++---------- README_CN.md | 99 ++++++++++++++++++++++++++++++++++++++++++++++ art/README_EN.png | Bin 0 -> 1264 bytes art/REAMDE_CN.png | Bin 0 -> 2074 bytes 4 files changed, 149 insertions(+), 21 deletions(-) create mode 100644 README_CN.md create mode 100644 art/README_EN.png create mode 100644 art/REAMDE_CN.png diff --git a/README.md b/README.md index 393fa18f..4b0a9305 100644 --- a/README.md +++ b/README.md @@ -1,18 +1,22 @@ -# EdXposed +# EdXposed Framework -Latest builds: [![Build status](https://ci.appveyor.com/api/projects/status/qu3vj1d64nqia1b8/branch/master?svg=true)](https://ci.appveyor.com/project/ElderDrivers/edxposed/branch/master) +[![Latest builds](https://ci.appveyor.com/api/projects/status/qu3vj1d64nqia1b8/branch/master?svg=true)](https://ci.appveyor.com/project/ElderDrivers/edxposed/branch/master) [![中文说明文档](art/README_CN.png)](README_CN.md) -A Riru module trying to provide an ART hooking framework (initially for Android Pie) which delivers consistent APIs with the OG Xposed, leveraging YAHFA (or SandHook) hooking framework. +## Introduction -## Supported versions +A Riru module trying to provide an ART hooking framework (initially for Android Pie) which delivers consistent APIs with the OG Xposed, leveraging YAHFA (or SandHook) hooking framework, supports Android 8.0 ~ **10**. -- Android Oreo (8.x) -- Android Pie (9.0) -- Android 10 +> Xposed is a framework for modules that can change the behavior of the system and apps without touching any APKs. That's great because it means that modules can work for different versions and even ROMs without any changes (as long as the original code was not changed too much). It's also easy to undo. As all changes are done in the memory, you just need to deactivate the module and reboot to get your original system back. There are many other advantages, but here is just one more: Multiple modules can do changes to the same part of the system or app. With modified APKs, you to decide for one. No way to combine them, unless the author builds multiple APKs with different combinations. + +## Supported Versions + +- Android Q (10)[sdk29] +- Android Pie (9)[sdk28] +- Android Oreo (8.x)[sdk26/27] For Android Nougat (7.x) and lower, please use the original Xposed Framework. -## Build requirements +## Build Requirements Same as [Riru-Core's](https://github.com/RikkaApps/Riru/blob/master/README.md#build-requirements) and zip binaries can be downloaded from [here](http://gnuwin32.sourceforge.net/packages/zip.htm). @@ -27,39 +31,64 @@ and zip binaries can be downloaded from [here](http://gnuwin32.sourceforge.net/p 1. Install Magisk v19.0+ (for latest EdXposed or Huawei devices, use our custom Magisk: Change Magisk update channel to [this](http://edxp.meowcat.org/repo/version.json)). 2. Install [Riru-Core](https://github.com/RikkaApps/Riru/releases) v19+ from Magisk repo. -3. Download [EdXposed](https://github.com/solohsu/EdXposed/releases) and install it in Magisk Manager or recovery mode. +3. [Download](#download) and install EdXposed in Magisk Manager or recovery mode. 4. Install [companion application](#companion-applications). 4. Reboot. 5. Have fun! :) -## Companion applications +## Download + +Edxposed has three different builds + +- Beta:Stable version after passing the test, suitable for general users, update slowly. +***Download Beta version in Magisk Manager's [Downloads] tab*** + +- Alpha: Test version with multiple commits. +***Download Alpha version in [[Github Releases](https://github.com/ElderDrivers/EdXposed/releases)]*** + +- Canary: Debug version. Automatically build by CI. +***Download Canary version in [[EdXposed Manager](https://github.com/ElderDrivers/EdXposedManager)]*** + +## Companion Applications - For v0.2.9.5 and before: [Xposed Installer](https://github.com/DVDAndroid/XposedInstaller). - For v0.2.9.6 and v0.2.9.7: [Xposed Installer](https://github.com/DVDAndroid/XposedInstaller) + [EdXp Manager](https://github.com/solohsu/EdXpManager)(optional). - For v0.2.9.8 and later: [EdXposed Installer](https://github.com/solohsu/XposedInstaller) and [EdXposed Manager](https://github.com/ElderDrivers/EdXposedManager). - For the latest version, we recommend to use [EdXposed Manager](https://github.com/ElderDrivers/EdXposedManager). -## Useful links +## Useful Links - [List of Xposed Modules For Android Pie Working With EdXposed](https://forum.xda-developers.com/xposed/list-xposed-modules-android-pie-ed-t3892768) (thanks to Uraniam9 @ xda-developers) -## Known issues +## Known Issues -- May not be compatible with all ART devices. -- File access services are not implemented yet, now EdXp simply uses magiskpolicy to enable needed SELinux policies. -- Dynamic modules not work, caused by SELinux. +- [ ] May not be compatible with all ART devices. +- [ ] (Provisional solved, Use magiskpolicy to enable needed SELinux policies) File access services are not implemented yet. +- [ ] (Provisional solved, #384) Wait for Magisk sepolicy update. +- [ ] (Provisional solved, #386) SafetyNet and some app tripped EdXposed. +- [ ] (Provisional solved, #401) Some module cannot hook app, such as WeXposed. +- [x] (Fixed, use EdXposed Manager v4.5.2 and newer) ~~Dynamic modules not work, caused by SELinux.~~ -## Get help +## Get Help -- GitHub issues: [Issues](https://github.com/solohsu/EdXposed/issues/) +- GitHub issues: [Issues](https://github.com/ElderDrivers/EdXposed/issues/) -Notice(for Chinese): 鉴于部分用户提交的Issues质量过低,对于中文用户反馈,请先阅读[EdXposed错误提交说明_cn](https://raw.githubusercontent.com/ElderDrivers/Repository-Website/gh-pages/repo/EdXposedIssuesReport_cn.txt)(不看说明提交的Issue会有很大可能被close) +- Notice(for Chinese): In view of the low quality of issues submitted, please read the Chinese user report first[EdXposedIssuesReport_cn](http://edxp.meowcat.org/repo/EdXposedIssuesReport_cn.txt)(If you don't read the instructions, the submitted issue is likely to be closed) -## Community +## For Developers + +Developers are welcomed to write Xposed modules with hooks based on EdXposed Framework. Module written based on EdXposed framework is fully compatible with the original Xposed Framework, so contrary a Xposed Framework-based module will work well with the EdXposed framework too. + +- [Xposed Framework API](https://api.xposed.info/) + +We use the module repository of the original Xposed, so you simply upload the module to repository, then you can download your module in EdXposed. + +- [Xposed Module Repository](https://repo.xposed.info/) + +## Community Discussion - QQ Group: [855219808](http://shang.qq.com/wpa/qunwpa?idkey=fae42a3dba9dc758caf63e971be2564e67bf7edd751a2ff1c750478b0ad1ca3f) -- Telegram: [Code_of_MeowCat](http://t.me/Code_of_MeowCat) -- Discord (not recommended): [Code_of_MeowCat](https://discord.gg/Hag6gNh) +- Telegram: [@Code_of_MeowCat](http://t.me/Code_of_MeowCat) Notice: These community group don't accept any bug report, please use [Get help](#get-help) to report. diff --git a/README_CN.md b/README_CN.md new file mode 100644 index 00000000..899445ff --- /dev/null +++ b/README_CN.md @@ -0,0 +1,99 @@ +# EdXposed Framework + +[![最新构建](https://ci.appveyor.com/api/projects/status/qu3vj1d64nqia1b8/branch/master?svg=true)](https://ci.appveyor.com/project/ElderDrivers/edxposed/branch/master) [![English](art/README_EN.png)](README.md) + +## Introduction + +基于 Riru 的 ART hook 框架 (最初用于 Android Pie) ,提供与原版 Xposed 相同的 API, 使用 YAHFA (或 SandHook) 进行 hook, supports Android 8.0 ~ **10**. + +> Xposed 框架是一套开放源代码的、在Android高权限模式下运行的框架服务,可以在不修改APK文件的情况下修改程序的运行,基于它可以制作出许多功能强大的模块,且在功能不冲突的情况下同时运作 + +## 支持的版本 + +- Android Oreo (8.x, sdk26/27) +- Android Pie (9, sdk28) +- Android Q (10, sdk29) + +如果你使用 Android Nougat (7.x) 或更低版本, 请使用原版的 Xposed 框架 + +## 编译需求 + +见 [Riru-Core 的编译需求](https://github.com/RikkaApps/Riru/blob/master/README.md#build-requirements) +zip 可执行文件可以在 [这里](http://gnuwin32.sourceforge.net/packages/zip.htm) 下载 + +## 编译和使用 + +1. 执行 `:edxp-core:[zip|push][Yahfa|Sandhook]Release` 来构建对应分支的可刷入的 zip 文件 +2. 在 `edxp-core/release/` 中找到可刷入的 zip 文件 +3. 经由 Magisk Manager 或在恢复模式(Recovery)中刷入 + +## 安装 + +1. 安装 Magisk v19.0+ (对于最新的 EdXposed 构建或华为/荣耀设备, 请使用我们自定义的 Magisk: 将 Magisk 更新通道更改为 [http://edxp.meowcat.org/repo/version.json](http://edxp.meowcat.org/repo/version.json)). +2. 在 Magisk 仓库中安装 [Riru-Core](https://github.com/RikkaApps/Riru/releases) v19 或更高版本. +3. [下载](#下载)并在恢复模式(Recovery)或经由 Magisk Manager 安装 EdXposed. +4. 安装 [框架管理应用](#框架管理应用). +4. 重启手机. +5. 完成 :) + +## 下载 + +Edxposed 拥有三个不同的版本 + +- Beta:经过测试的稳定版, 适合一般用户,更新缓慢. +***在 [Magisk Manager] 中的 [下载] 页中下载 Beta 版本*** + +- Alpha: 多次提交更新的测试版. +***在 [[Github Releases](https://github.com/ElderDrivers/EdXposed/releases)] 中下载 Alpha 版本*** + +- Canary: 由 CI 自动生成的测试版. +***在 [[EdXposed Manager](https://github.com/ElderDrivers/EdXposedManager)] 中下载 Canary 版本*** + +## 框架管理应用 + +- 对于 v0.2.9.5 或更低版本: [Xposed Installer](https://github.com/DVDAndroid/XposedInstaller). +- 对于 v0.2.9.6 和 v0.2.9.7: [Xposed Installer](https://github.com/DVDAndroid/XposedInstaller) + [EdXp Manager](https://github.com/solohsu/EdXpManager)(optional). +- 对于 v0.2.9.8 或更高版本: [EdXposed Installer](https://github.com/solohsu/XposedInstaller) 或者 [EdXposed Manager](https://github.com/ElderDrivers/EdXposedManager). +- 对于最新版,我们建议使用 [EdXposed Manager](https://github.com/ElderDrivers/EdXposedManager). + +## 外部链接 + +- [List of Xposed Modules For Android Pie Working With EdXposed](https://forum.xda-developers.com/xposed/list-xposed-modules-android-pie-ed-t3892768) (感谢 Uraniam9 @ xda-developers) + +## 已知问题 + +- [ ] 可能不兼容部分 ART 设备. +- [ ] (临时解决, 使用 magiskpolicy 来启用所需的 SELinux 策略)文件访问服务尚未实现. +- [ ] (临时解决, #384) 等待 Magisk 更新 SEPolicy. +- [ ] (临时解决, #386) SafetyNet 和一些应用检测到了 EdXposed. +- [ ] (临时解决, #401) 一些模块无法工作,例如微X模块. +- [x] (已修复, 使用 EdXposed Manager v4.5.2 或更高版本) ~~受制于 SELinux 策略,即时列表功能无法使用.~~ + +## 获取帮助 + +- GitHub issues: [Issues](https://github.com/solohsu/EdXposed/issues/) + +- 注意: 鉴于部分用户提交的Issues质量过低,对于中文用户反馈,请先阅读[EdXposed错误提交说明_cn](https://raw.githubusercontent.com/ElderDrivers/Repository-Website/gh-pages/repo/EdXposedIssuesReport_cn.txt)(不看说明提交的Issue会有很大可能被close) + +## 社区交流 + +- QQ 群组: [855219808](http://shang.qq.com/wpa/qunwpa?idkey=fae42a3dba9dc758caf63e971be2564e67bf7edd751a2ff1c750478b0ad1ca3f) +- Telegram 电报: [@Code_of_MeowCat](http://t.me/Code_of_MeowCat) + +注意: 这些社区群组不接收问题反馈, 请使用 [获取帮助](#获取帮助) 进行反馈. + +## 贡献 + +- 显然,框架还不够稳定,欢迎使用PR贡献代码. :) +- 如果你愿意,可以[请我喝杯咖啡](https://www.paypal.me/givin2u). + +## 鸣谢 + +- [YAHFA](https://github.com/rk700/YAHFA): ART hook 核心框架 +- [Magisk](https://github.com/topjohnwu/Magisk/): 让一切成为可能 +- [Riru](https://github.com/RikkaApps/Riru): 提供一种将代码注入 zygote 进程的方法 +- [XposedBridge](https://github.com/rovo89/XposedBridge): 原版 xposed 框架的 API +- [dexmaker](https://github.com/linkedin/dexmaker) 和 [dalvikdx](https://github.com/JakeWharton/dalvik-dx): 动态生成 YAHFA hook 类 +- [Whale](https://github.com/asLody/whale): 用于 hook 内联方法 +- [SandHook](https://github.com/ganyao114/SandHook/): SandHook 分支的 ART hooking 框架 + diff --git a/art/README_EN.png b/art/README_EN.png new file mode 100644 index 0000000000000000000000000000000000000000..ba77ec93ac6fc90b754f383fbfb812ec20bc1b31 GIT binary patch literal 1264 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 Eg6Zw$KL7v# literal 0 HcmV?d00001