如何使用Cordova插件捆绑CocoaPods依赖项?

我正在开发一个Cordova插件,而对于iOS平台,我想要合并一些现有的(非cordova特定的)Cocoapods。 我无法找到有关如何使其工作的任何信息或示例,我希望这是一个相当常见的用例。

请注意,我并没有尝试将Cordova用作Cocoapod,其中有大量信息,而是使用我正在开发的Cordova插件的iOS平台内的Cocoapods。

Cordova的plugin.xml通常需要列出所有项目依赖项以正确捆绑事物。 有没有人知道内部使用Cocoapods的Cordova或PhoneGap插件?

我只是浪费了几个小时,所以我想我会把它放在任何感兴趣的人身上。 Cordova从Cordova-CLI版本6.4.0 / Cordova iOS版本4.3.0支持与CocoaPods的直接集成。

详细信息请访问: https : //cordova.apache.org/docs/en/latest/plugin_ref/spec.html

只需添加以下内容:

  ...Other iOS platform specific declerations...   

到你的插件的plugin.xml文件。 Cordova自动生成.xcworkspace。 使用它而不是xcodeproj文件,你很高兴。

我也找不到很多关于此的信息,所以我写了一个Cocoapods插件来帮助: https : //github.com/xdissent/cocoapods-cordova它自动管理你的plugin.xml并构建一个只链接的通用静态库非cordova依赖。 目前是WIP,但我在一些插件上成功使用它。

我无法找到解决这个问题的好方法,所以我为它创建了一个插件, https://github.com/blakgeek/cordova-plugin-cocoapod-support 。 它增加了对在plugin.xml中定义Cocoapod依赖项的支持。 它应该作为另一个插件的依赖项包含在内,然后该插件可以在plugin.xml的ios平台部分添加条目。 它支持所有pod依赖规范,如git repo,配置,subspecs等。希望这可以帮助某人。

我遇到了类似的情绪。

这是两个解决方法。

  1. 将Cordova集成到插件开发环境中,即将纯Xcode项目转换为基于Cordova的项目。 如果我们想使用适用于iOS的cordova插件,也可以通过Cocoapods使用。

  2. 将Cocoapods引入Cordova生成的Xcode项目。 这样,我们需要将生成的代码放入源代码控制中,并且在添加其他插件时要小心,因为我们修改的文件可以通过cordova修改。

我不知道哪一个是更好的选择。

以下pod信息有助于解决方法#1。

pod search cordova

– > Cordova(4.0.1)Cordova iOS pod’Cordova’,’〜> 4.0.1′ – 主页: https : //github.com/apache/cordova-ios – 来源: https : //github.com/apache /cordova-ios.git – 版本: 4.0.1,3.9.1,3.8.0,3.7.0,3.6.0,3.5.0,3.4.1,3.4.0,3.3.0,3.2.0,3.1 .0,3.0.0,2.9.0,2.8.0,2.7.0,2.6.0,2.5.0,2.4.0,2.3.0,2.2.0,2.1.0,2.0.0,1.9.0 ,1.8.1,1.8.0,1.7.0,1.6.1,1.6.0,1.5.0,1.4.1,1.4.0,1.3.0,1.2.0,1.1.0,1.0.0 [master回购]

– > Cordova-Lib(3.9.1)镜像自github,部署在git.oschina.net解决国内访问的连接速度.Apache Cordova是一个使用HTML,CSS和JavaScript构建本机移动应用程序的平台。 pod’Cordova-Lib’,’〜> 3.9.1′ – 主页: https : //git.oschina.net/liubiqu/cordova-ios-来源: https : //git.oschina.net/liubiqu/cordova-ios .git – 版本:3.9.1,3.9.0,3.8.0 [master repo]