安装 cordova 插件会破坏 ios 框架符号链接



我正在开发一个Cordova插件,它为Android和iOS平台提供了功能。我还有一个演示 Cordova 应用程序来测试插件,当安装在演示应用程序中时,该插件适用于 android 平台,但我无法让演示应用程序构建为 iOS 平台构建插件安装插件。

我收到此错误

"致命错误:找不到'测试插件/测试插件.h'文件">

检查演示应用程序中的插件文件夹。我注意到插件使用的iOS框架中的符号链接似乎完全丢失,导致我相信框架没有正确移动。此外,我可以通过手动将有问题的框架移动到演示应用程序的插件文件夹中并从 Xcode 运行该应用程序来运行演示应用程序。

我已经尝试了此处描述的解决方案,但它不能解决问题(我认为它可能仅用于修复被 Windows 破坏的符号链接),我在运行 MacOS Sierra(版本 10.12)、Xcode 8.31 和 Cordova 版本 7 的 Mac 上。

这实际上对我有用。不过,我做了一些不同的事情。我将脚本放在before_plugin_install文件夹下,并从文件夹中创建符号链接,如下所示:

#!/bin/sh
cd plugins/MY_PLUGIN/src/ios/MY_FWK.framework/
ln -s -f Versions/A/Headers/ Headers
ln -s -f Versions/A/MY_FWK MY_FWK
ln -s -f Versions/A/ Current
cd -

我给了脚本执行权限,删除了插件并再次添加。Cordova最终将框架的整个文件(而不是保留符号链接)复制到项目中,但该项目现在可以工作了。

[更新]

请注意,不推荐使用 hooks 文件夹。

最新更新