吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 18800|回复: 92
收起左侧

[Android 分享] Xposed插件安装更新免重启手机方案

  [复制链接]
fooree 发表于 2018-7-11 09:55
毋庸置疑的是,Xposed已经被玩坏了。

但是, Xposed无论从哪个方面来说都是一款非常优秀的框架、方案。


但是很多开发者对于在开发插件时,安装、更新Xposed插件需要重启手机,总是有种难言之隐,抱怨之声犹如滔滔江水连绵不绝,又犹如黄河泛滥一发不可收拾。


如果看看Android源码,看看Xposed源码,了解了Android运行时系统进程和应用进程生命周期,了解了Xposed提供的功能以及注入代码的场景、时机,应该就不会抱怨那么多了。


因为安装和更新插件后如果不(软)重启手机,意味着放弃部分功能。

Xposed提供的功能接口主要有4个,具体都是干什么的,相信小伙伴们都是成竹在胸,就不啰嗦了。
  • de.robv.android.xposed.IXposedHookZygoteInit
  • de.robv.android.xposed.IXposedHookLoadPackage
  • de.robv.android.xposed.IXposedHookInitPackageResources
  • de.robv.android.xposed.IXposedHookCmdInit


但实际情况是,很多开发者只使用了Xposed的一部分功能,也就是de.robv.android.xposed.IXposedHookLoadPackage提供的功能。一般情况下,只是实现了该接口,然后在目标应用程序进程中注入执行插件代码,干一些自定义的勾当。

本文提供的免重启方案,仅仅针对de.robv.android.xposed.IXposedHookLoadPackage接口而已。如果你在开发中涉及到了更多的接口,比如de.robv.android.xposed.IXposedHookZygoteInit,那还能指望(软)不重启吗?
本文提供的免重启方案,主要对XposedBridge(源码地址:https://github.com/rovo89/XposedBridge)中的de.robv.android.xposed.XposedInit类进行了源码修改,然后重新进行编译。文件已经上传github,下载地址:https://github.com/fooree/fooXposed/blob/master/files/XposedBridge_fooree_compile.jar。
因为Xposed本身设计及其提供的功能比较完善(虽说不能满足部分人需求),此次更改其实是一种破坏Xposed架构和功能的行为;思来想去,满满的全是罪恶感。
为了能够免重启,最终还是下手了。使用方法:替换手机中的/system/framework/XposedBridge.jar文件,然后重启手机()。务必首先备份原文件哦。
测试说明:在搭载Android 7.0系统的Nexus 5X手机上了测试,其他高度定制化的Android系统没有测试过。使用限制
  • 只能在ART模式下(Android 4.4.4以上)有效。
  • 只能对仅仅实现了de.robv.android.xposed.IXposedHookLoadPackage接口的插件生效。
  • 对于不能退出的进程无效,例如system_server。
  • 安装、更新插件后,需要等到XposedInstaller弹出模块更新通知,然后重启目标应用才能生效,而不是重启手机哦。
  • 安装插件后在XposedInstaller中勾选才能生效,但仅仅是勾选而已;取消勾选失效。
  • 小伙伴在测试、使用过程中遇到其他问题其他问题,请留言讨论。

    小伙伴们,开始享受大把大把的免重启时光吧。

免费评分

参与人数 25威望 +1 吾爱币 +32 热心值 +24 收起 理由
神棍哲学 + 1 + 1 我很赞同!
Vsir + 1 + 1 谢谢@Thanks!
MonsterG + 1 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
Zy143L + 1 + 1 用心讨论,共获提升!
kanxinqing + 1 + 1 鼓励转贴优秀软件安全工具和文档!
coock + 1 + 1 我很赞同!
方大爷 + 1 + 1 谢谢@Thanks!
qtfreet00 + 1 + 9 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
Tunny + 1 小米6测试安卓8.0替换后重启,连XP框架显示未激活
monki + 1 + 1 用心讨论,共获提升!
笙若 + 1 + 1 谢谢@Thanks!
mancong122 + 1 + 1 牛逼
xwei227 + 1 + 1 我很赞同!
angoen + 1 + 1 谢谢@Thanks!
398438849 + 1 + 1 用心讨论,共获提升!
xbk666 + 1 + 1 我很赞同!
supperlitt + 1 + 1 我很赞同!
雨天阴天 + 1 + 1 谢谢@Thanks!
sjh198687 + 1 + 1 我很赞同!
jackie1 + 1 我很赞同!
二三 + 1 + 1 谢谢@Thanks!
独行风云 + 1 + 1 谢谢@Thanks!
老是卖你们 + 1 + 1 我很赞同!
hxbcwj + 1 + 1 用心讨论,共获提升!
noah88 + 1 + 1 热心回复!

查看全部评分

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

xixihaha2 发表于 2018-7-11 12:36
其实重启下也没那么麻烦
头像被屏蔽
太上舞殇 发表于 2018-7-11 13:55
狂爷幽弥 发表于 2018-7-11 10:11
头像被屏蔽
多能爹° 发表于 2018-7-11 10:11
提示: 作者被禁止或删除 内容自动屏蔽
躲在角落看繁华 发表于 2018-7-11 10:21
谢谢楼主分享  顺便弱弱问一句对于xposed无法支持国内类似MIUI这样的定制UI该怎么办。。。。也不能说不能用 就是装上后整个手机卡成PPT
凌乱的思绪 发表于 2018-7-11 10:50
收藏学习了
noah88 发表于 2018-7-11 11:04 来自手机
楼主,编译xpoesed需要什么环境?曾试着编译android6.0版本的,明明是要求openJDK1.7,却死活说不匹配,直接改了MK文件能跳过,后续又各种错误,真折磨人
Modesty 发表于 2018-7-11 11:28
厉害了 可以免重启 每次安装完模块都要重启 感谢分享
落笔成殇 发表于 2018-7-11 14:40
谢谢分享 等前排测式
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 22:38

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表