gpt4 book ai didi

ios - 修改内置框架ios

转载 作者:行者123 更新时间:2023-12-01 17:26:53 26 4
gpt4 key购买 nike

我是一名开发 iOS 机器人应用程序的开发人员。我不打算将这个应用程序提交到应用程序商店,我也不希望建议的方法得到苹果的批准......

我正在尝试让蓝牙工作,我认为一个好的起点是尝试修改现有的苹果框架。我是否可以修改框架,以便在将它们构建到我的 iOS 设备时为应用程序修改框架(但不是同一设备上的其他应用程序)?

最佳答案

事实上,你可以!

Objective-C 允许你“调配”方法来覆盖它们的默认行为,但如果你愿意,仍然可以调用原始实现。您可以对任意数量的 Objective-C 方法执行此操作,次数不限。

如果您希望覆盖 C 函数中存在的行为,则需要对平台进行更多控制。越狱允许您使用 Jay Freeman 的 CydiaSubstrate 的全部功能来 Hook 或混合 Objective-C 方法和 C/C++ 函数。

虽然我不推荐使用 MethodSwizzle就其本身而言,以下 URL 对 swizzling http://cocoadev.com/wiki/MethodSwizzling 进行了很好的讨论.

但是你真的应该使用 CydiaSubstrate's改为 MSHookMes​​sageEx 和 MSHookFunction。特别是因为您没有向 App Store 提交任何内容。

现在关于蓝牙,我已经在这个领域做了大量的工作(我开发了 Celeste,这是一个系统范围的调整,为 iOS 上的系统应用程序提供 Vanilla 蓝牙 OBEX 支持)。我建议您考虑使用 BTstack 之类的东西,它使您可以访问从 HCI 到 RFCOMM 级别的蓝牙模块,并支持您可能需要的 SDP 和配对等功能。它还有一个额外的好处,那就是不需要方法混搭,有些人似乎认为这是某种邪恶的仪式,应该不惜一切代价避免。

关于ios - 修改内置框架ios,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13168863/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com