您现在的位置是:首页 > 科技 > 正文
在Xposed框架是现在仍然是自定义您的Android设备的一个主要方式
发布时间:2022-06-01 09:30:02编辑:来源:
在Xposed框架是-现在仍然是-自定义您的Android设备的一个主要方式,几乎所有的设备兼容,让您轻松安装模块来调整几乎所有的细节。是否想获得自定义ROM提供的所有功能而不必刷新它们?GravityBox或XTouchwiz将做到这一点。是否想针对每个应用程序调整某些设置,例如更改特定应用程序的DPI?应用设置涵盖了您。希望应用程序的开发人员想到添加特定功能,例如Google允许您个性化环聊或Facebook允许您下载喜欢的Instagram帖子吗?好吧,您不需要这样做,因为Xposed使开发人员可以修改他们想要的几乎任何东西,无论是需要自定义ROM的系统范围功能还是针对特定应用程序的调整。
Xposed框架为开发人员带来了一个主要优势,那就是易于开发(相比之下,必须针对ROM调整而编译AOSP或必须编辑Smali代码)。它还为用户带来了巨大的优势:便利,因为它不再迫使他们查找并刷新提供其所需功能的ROM(而是可以混合和匹配独立模块的ROM),而ROM提供了他们所寻找的每个功能。稳定性和性能。这也使调整应用程序变得更加容易,因为无需处理不同的签名,因此,当应用程序检查其签名时,这将要求用户卸载原始版本或跳过某些特定的操作(例如,经过修改的YouTube客户端处理的操作))。
唯一的问题?由于Xposed的开发人员(我们自己的高级认可开发人员,rovo89)具有的性质和空闲时间,它通常落后于Android版本。更新约四个月以支持Lollipop,而Nougat则花费了大约一年的时间。考虑到实际有多少Android用户在Nougat上,这并没有看起来那么糟糕(大约13.5%,尽管请记住,Xposed的目标受众Android爱好者也更有可能在Nougat上使用)。但是,如果不能同时使用您喜欢的Xposed模块并同时拥有最新和最好的Android版本,仍然会很烦人。
有了Xposed框架的源代码(至少对于稳定的发行版本而言),开发人员abforce决定动手,看看是否可以将rovo89的某些修改移植到Nougat。为了采用另一种更简单的方法,abforce实质上改编了Xposed实际在安装魔术后执行的部分,并使其在编译自己的ROM时可以将其包括在内(此后,其他解决方法浮出水面)。可以说这种方法有很大的不同,因为它忽略了Xposed的核心优势之一,每个人都可以轻松使用它。但是,所有进展都是可喜的,解决问题的多头负责人可能是有利的,并提供了新的见识。我们看到的主要问题是围绕该开发的错误信息(由其他“开发人员”和一些博客传播)以及社区的一些反应。希望本文将使整个情况更加清晰。
Xposed如何工作?
首先,为了了解正式的Xposed框架以及abforce的版本所进行的工作,以及仍在进行的工作,我们需要研究该框架的工作方式。虽然框架本身是只有项目的一部分,通常是指双方的框架和安装的框架失去了它的许多优点,但没有普遍安装程序,其中很多工作进入为好。
Xposed的强大功能来自一个简单的概念:可以“挂钩”任何方法(方法是组成任何程序的小部分),以使Xposed模块的代码在执行之前,之后或代替执行。让我们举一个简单的例子:假设Instagram单击菜单按钮时使用了一种名为“showMenuOptions”的方法,并且该方法可以处理向您显示“报告”和“共享”按钮的问题。通过创建Xposed模块,您可以修改该方法以添加其他按钮来下载图像,而不是共享图像。修改范围从简单的调整(例如PlayStoreChangelog)到大修(例如GravityBox,旨在提供自定义ROM将具有的所有功能)!
这使Xposed变得强大起来,但这只是方程式的一部分。其他部分是多功能性-或实际上可以在几乎任何设备上使用Xposed(具有受支持的Android版本),并且易于使用。所有用户所需要做的就是抓住安装程序,它会发挥其魔力并动态修补其系统以集成Xposed。要应用模块,您只需要安装,启用它并重新启动即可。无需大惊小怪,无需刷新自定义ROM(特别是在自定义ROM并非总是可行的选择时),无需卸载APK即可安装另一个具有不同签名的签名。您所需要的只是root用户(您绝对可以拥有一个自定义ROM,这在很多时候是很有意义的;但是Xposed可以提供自定义ROM可以提供的大多数功能,但除此之外)。
但是,在这种简单性的背后还有很多工作:
对于模块开发人员,所提供的API必须稳定并且保证能够正常工作。Xposed框架不会因某些ROM和/或挂钩组合而随机失败(在特殊情况下除外)。换句话说,如果用户遇到问题,则该问题应该是用户的故障(用于未正确安装/启用某项功能)或模块开发人员的故障(用于在模块中存在错误)。但是,几乎可以肯定的是,框架本身按预期工作,并且不是导致用户感到沮丧和开发人员困惑的错误根源。
对于用户而言,该框架必须易于安装在其设备和ROM上,无论他们是运行最新版TouchWiz的Samsung还是安装了LineageOS的Nexus。Xposed安装程序可处理所有幕后操作。要在各种设备和ROM组合上测试安装程序和框架,必须进行大量工作。发现错误通常是由于OEM的实施方式不同,因此必须进行修复以确保所有用户的可靠性。
Android的主要修订版有时可能会带来重大更改,这需要重新考虑框架架构的某些部分以适应这些更改。有时,新版本还会带来更多机会,需要更多时间才能拥有更好的产品。例如,首次引入ART时,使Xposed禁用某些优化,以便挂钩可以正常工作。在Nougat的情况下,即时(JIT)编译器为保持这些优化提供了机会。
上面的许多工作都涉及一些次要细节,其中大多数框架都按预期运行,但是不一致和次要问题将使它成为用户使用的,以及模块开发人员的支持和开发噩梦。但是,发布的产品旨在使所有人都能使用而不会感到意外。当然,也有一些例外,因为某些OEM的更改需要付出更多的努力才能适应,但是这些更改很小,绝大多数用户(和开发人员)都可以享受稳定可靠的Xposed体验。任何遇到的异常都会以明确的免责声明记录在案,因此不会有人感到惊讶。
考虑到以上几点,rovo89对Xposed的愿景是成为一个稳定的解决方案,为用户和开发人员提供可靠且易于使用的合同。他的理念(尽管您可能不同意)是简单易懂的:在准备好按预期使用时应该发布产品,因为在发布产品之前会带来更多的麻烦而不是收益。
abforce的牛轧糖XposedART子模块
我们不愿意将abforce的工作称为“端口”或“非官方的Xposed”,因为这是不准确和误导的。如我们所见,Xposed具有两个主要组件:
Xposed框架本身的核心,它处理了挂钩方法的魔力。
Xposed安装程序,可确保易于在所有设备上正确安装框架。
abforce所做的就是将rovo89的Marshmallow代码在第一部分(仅限Xposed框架)移植到Nougat,这种方式要求在编译自定义ROM时先进行更改。除此之外,该框架的许多次要(但很重要)部分还没有完全适应于Nougat。因此,行为可能会不一致,虽然大多数情况下都行得通(尽管并不适合所有人),但这并不可靠。对于模块开发人员和用户而言,依赖于不完整和不一致的实现将给所有相关方面带来糟糕的体验,其中某些模块根本无法正常工作或导致设备无法启动。虽然许多用户可以拥有某些东西而不是什么都可以,开发人员的观点仍然是可以完全理解的(尤其是如果您牢记免责声明并不能阻止虚假的支持问题和抱怨)。
(除了以上两个要点之外,我们还将期望对最终的正式Xposed框架进行进一步的更改,以利用Nougat中引入的更改。)
应该指出的是,当大多数人只满足于说话时,abforce的表现出色,但是他的工作远没有完整的Xposed经验,并且没有开发人员或博客声称自己是其他人(而且绝对不是abforce;再次,我们除了尊重之外所有为此付出实际努力的实际开发人员)。实际上,正如我们稍后会谈到的那样,社区的某些响应(无论是用户还是“开发人员”)是这一系列开发中唯一令人毛骨悚然的部分。
社区回应
让我们切入正题,直截了当地:任何社区都有不好的元素和方面。与Android爱好者一样庞大的社区,不良因素似乎只是很大一部分(相当大,但相对而言仍然很小)。但是,如果不加糖衣,社区对开发XposedforNougat的反应非常幼稚,不体贴或不负责任。
第一个主要问题是许多人对“Xposed的死亡”表现出的居高临下的态度,因为对于牛轧糖来说,发布它花了太长时间。尽管rovo89进行了更新和保证,并且尽管在引入ART的最初版本时Lollipop确实发生了确切的情况。停止使用Xposed是很好的选择,但这不是要侮辱任何人的能力或攻击别人,因为他们有不同的理念,或者不确保立即满足您的闪烁需求。对于完全免费的项目,情况更是如此,开发人员已在其中表达了他的开发方法和背后的原因。
社区反应的另一个问题是误解了abforce的工作性质,许多人称赞abforce为新的Xposed或宣传它为Nougat的港口。与此相关的一个主要问题是“开发人员”在不了解(或关心)缺点的情况下急于提供可更新的版本,因为在某些线程中根本没有提供免责声明,甚至有人甚至放弃了免责声明而不是rovo89。(他们在Xposed上的大部分工作都在后面)和其他贡献者。
最后,我们认为我们应该再次提出rovo89的开发理念。有许多声音用户声称,将最新更改开源是有益的。虽然从理论上讲听起来不错,但在实践中并不容易,尤其是考虑到rovo89的解释:
[…]我认为仅仅推出当前状态不会对项目有所帮助。我们可能会看到编译代码的人真的很快地发布了“某些”版本,看到了它们似乎运行良好,并且将其发布为“它们的端口”,尽管他们不知道有什么问题和要做的事情。所以说我很自私,但我不想看到这样一个半成品。[资源]
事实证明,这是对当前情况的相当不错的预测,几个“开发人员”应用了abforce的更改,并提供了可闪烁的ZIP,几乎没有警告或没有警告,信用不完整,同时都要求捐款。
我们希望这些解释能消除您的一些疑虑,并解决您可能产生的误解。Xposed是一个了不起的项目,已经在我们的爱好者和闪光狂社区中占了很大一部分,而XposedforNougat应该是充满机遇的又一个巨大里程碑。由于像GravityBox这样的模块已经提供了Nougat支持,因此rovo89的完成项目将返回到许多选项。
标签:
猜你喜欢
最新文章
- DeepSeek公告:线上服务遭大规模恶意攻击,暂限非+86手机号注册
- IGN揭秘《刺客信条:影》新实机演示:主角形象深入人心!
- 焕新登场:全新起亚K4紧凑型车图解赏析
- 重庆:2025年将持续推进163项城中村改造项目
- 蔚来乐道春节期间暂停车机升级,2月6日恢复推送服务
- 超有牌面!国产游戏《明末:渊虚之羽》登上英国《EDGE》杂志封面,漫画风女侠惊艳亮相
- 币界网晚间行情速递:BTC比特币报价$103,391.48,日内微跌1.04%
- 暗区突围:全面转载新手必备攻略
- 未来人生:个人满级天赋展示与深度评价(五)
- 探索功夫英雄的奇妙世界:玩法特色与剧情概览
- 最后一波福利!速来领取《黑神话:悟空》限定红包封面!
- 《暗黑4》Steam史无前例大促:标准版仅售191.4元,速来抢购!
- 广东:2027年目标全面构建绿色低碳循环经济体系
- 金价飙升,直逼840元大关!黄金店铺春节延期休假,蛇金饰品与足金手机贴受热捧!
- 《宝可梦卡牌P》新扩展包时空激战1月30日震撼发布,帝牙卢卡荣耀参战
- 截至今晨7点,全国172个公路路段受雨雪寒潮侵袭影响
- 币界网晚间行情速递:DOT波卡币攀升至6.446美元/枚,日内涨幅达2.01%
- 《龙腾世纪4》销量惨淡致EA股价暴跌21.25%!市场反应强烈
- 比亚迪海豹汽车OTA升级:全新引入城市领航功能等重磅更新
- 特朗普透露或于30日天内决断TikTok命运
- 10亿基金助力,中部城市赣州抢占人形机器人产业先机
- 《蛋仔派对》服务器崩溃引发玩家不满,官方深夜致歉并修复问题
- Stellantis重启美国贝尔维迪尔工厂,千余员工将重返岗位
- 一鸣食品全资子公司增资扩建:1.32亿打造4500头规模繁育基地