Zendesk & Ionic - cordova-plugin-zendesk 不为 IOS 构建
Posted
技术标签:
【中文标题】Zendesk & Ionic - cordova-plugin-zendesk 不为 IOS 构建【英文标题】:Zendesk & Ionic - cordova-plugin-zendesk doesn't build for IOS 【发布时间】:2020-05-26 13:43:12 【问题描述】:我有一个混合应用程序,我需要在那里实现一个 Zendesk 工具。有一个我认为我正在尝试使用的插件:https://github.com/fleetio/cordova-plugin-zendesk
问题是我可以让它在 android 上运行,但在 ios 上构建失败并出现错误:
❌ /Users/ionic/builds/casasoft/jobmate-frontend/ios/capacitor-cordova-ios-plugins/sources/CordovaPluginZendesk/Zendesk.m:3:9:找不到模块“ZendeskSDK”强>
我也尝试根据发行说明中的内容提供使用 CocoaPods 的集成器 我正在尝试很多尝试改变一些东西,但不幸的是没有任何成功。
这个插件在 3.0.1 Swift 5.1 GM 版本中使用 Zenbox:https://developer.zendesk.com/embeddables/docs/ios_support_sdk/release_notes#3.0.1-swift-5.1-gm-compatible-build 我使用离子 5 和电容器。它适用于 Android,但不适用于 IOS。我现在完全没有想法,我开始在黑暗中拍摄,但真的没有任何帮助。
以前有人在IOS上用过吗?我正在尝试使用 XCode 11 构建,但即使使用 XCode 10,错误总是相同的,即使使用 Appflow 服务(用于构建 ios 文件的离子产品)。
我错过了什么?你知道可能出了什么问题吗?也许它在某人的脑海中敲响了警钟......提前致谢。
【问题讨论】:
【参考方案1】:该插件使用cordova-plugin-cocoapods-support
作为依赖项来配置CocoaPods 依赖项,而不是使用官方的Cordova 标签。
Capacitor 不支持那些自定义标签,有一个问题需要考虑,如果您有兴趣,请添加 +1 反应https://github.com/ionic-team/capacitor/issues/2773
但理想的解决方法是让插件作者移至official syntax
【讨论】:
【参考方案2】:我试图自己调查一下。最终,我能够在 IOS 上构建,但我这样做只是出于好奇。
这是一种解决方法(使用@jcesarmobile 评论中提到的“官方语法”)。
这不是一个完全解决的问题,而且我不是 IOS 开发人员,所以我不确定这段代码是否 100% 有意义(但它有效)。 我在这里只是给可能遇到类似问题的每个人一个提示。
在plugin.xml
1) 删除了这一行
<dependency id="cordova-plugin-cocoapod-support" />
2) 在 'platform name="ios" 中删除这一行:
<pod name="ZendeskSDK" version="~> 3.0.1" />
3) 而不是这条已删除的行(从第 2 点开始)粘贴:
<podspec>
<config>
<source url="https://cdn.cocoapods.org/"/>
</config>
<pods>
<pod name="ZendeskSDK" git="https://github.com/zendesk/zendesk_sdk_ios.git" branch="3.0.1-swift5.1-GM" />
</pods>
</podspec>
【讨论】:
以上是关于Zendesk & Ionic - cordova-plugin-zendesk 不为 IOS 构建的主要内容,如果未能解决你的问题,请参考以下文章
如何解决 Ionic2 中的 CORS 问题和 JSONP 问题