iOS 上是不是可以使用动态链接框架?
Posted
技术标签:
【中文标题】iOS 上是不是可以使用动态链接框架?【英文标题】:Is a Dynamically Linked Framework possible on iOS?iOS 上是否可以使用动态链接框架? 【发布时间】:2011-08-15 15:06:56 【问题描述】:这里的关键字是可能。我知道一些讨论这个以及如何创建静态框架的资源 - 这里:https://github.com/kstenerud/ios-Universal-Framework 和这里:http://db-in.com/blog/2011/07/universal-framework-iphone-ios-2-0/
我很想看看是否可能在一个不会提交到应用商店的应用中创建一个动态链接框架。我知道不越狱就不可能在设备上写入应用程序包。是否可以说,下载一个编译好的框架文件,把它放在文档目录中,然后通过应用程序访问它(想想插件架构)。我知道如果是这样,你会因为提交它而被应用商店拒之门外,但假设这是一个企业应用程序,或者是苹果不需要批准的临时分布式应用程序。
在我最初的研究中,我没有发现任何支持它是可能的,但我觉得这可能是一个边缘案例,没有人发表任何关于它的文章。在我放弃之前寻找一位大师给我一个明确的“不”。
【问题讨论】:
【参考方案1】:不确定这是否是您所追求的,但根据 Apple 的说法,动态链接库甚至可以在 iOS 中使用 - 例如系统库... XCode 包含它们的副本并通过符号链接引用它们...
请参阅此 http://developer.apple.com/library/ios/#documentation/Miscellaneous/Conceptual/iPhoneOSTechOverview/iPhoneOSFrameworks/iPhoneOSFrameworks.html#//apple_ref/doc/uid/TP40007898-CH6-SW3 的末尾附近
只是一个想法: 将您要使用的 .dylib + 包含文件放入 XCode 期望系统库的相应文件夹中...使用它们,然后在部署时将符号链接放入您的包中...让符号链接指向您复制 .dylib 的位置
【讨论】:
也许我没有正确解释我的问题。我基本上是在寻找一种插件架构,在将应用程序安装到 iOS 设备上之后,我可以在其中分发编译的代码(以动态链接框架的形式——除非有更好的方法)。我不打算专门修改系统框架,而是创建一个架构以允许扩展应用程序,而无需用户下载应用程序的新版本。 我认为我描述的想法可以用于这样的架构......系统框架位置只是用作描述基本模式以及如何让 XCode 等接受它的工具.. . 如果这个想法可行,您可以通过替换通过符号链接访问的 .dylib 来更新您的应用程序... 好的,我明白你现在在说什么了(我想)。我会看看我能想出什么。【参考方案2】:我相信答案是否定的。 iPhone 上的应用程序是沙盒的。也就是说,除了 Apple 提供的框架之外,应用程序无法访问其自身构建之外的任何内容。
【讨论】:
【参考方案3】:现在可以使用 IOS 8 Xcode 6。
【讨论】:
以上是关于iOS 上是不是可以使用动态链接框架?的主要内容,如果未能解决你的问题,请参考以下文章
[RN][IOS]是不是可以将 React Native RCTLinking 与 RNFirebase 动态链接结合使用?
带有社交元数据的 Firebase 动态链接未在 iMessage 上显示图像(iOS 消息)