ios - Cordova 通用链接可在 iOS 模拟器中使用,但不适用于开发/产品构建
问题描述
我正在开发一个 Cordova 混合应用程序。我将 cordova-universal-links-plugin 1.2.1 添加到我的项目中。它可以在 Android 上编译并正常工作。
我完成了位于https://www.npmjs.com/package/cordova-universal-links-plugin-fix的 iOS 的所有设置步骤
因此,Xcode 模拟器可以正常工作,在 Xcode 模拟器消息应用程序中单击我的应用程序 url ( https://my-app-link.com/ ) 会在模拟器中打开应用程序,而不是 Safari。
但是,当我使用 cordova 编译应用程序时:
cordova build ios --debug --device --no-telemetry
或者
cordova build ios --release --device --no-telemetry
它们都不起作用,单击消息应用程序中的链接会打开 Safari 浏览器而不是我的应用程序。
我已经确认长按链接不会显示“在 MyApp 中打开”选项。我尝试了不同的设备,但都是一样的。
我怀疑在构建项目时未正确编译权利文件,但我不知道它在科尔多瓦应用程序中的正确位置以及如何确认这是问题还是其他原因。
解决方案
好的,事实证明这是 Cordova/Phonegap 构建过程的问题。一旦我通过选择“通用 iOS 设备”的目标,然后从产品菜单中选择存档来使用 Xcode 构建过程,XCode 构建了正确的 IPA 文件,我将文件上传到了 App Store,它让通用链接在 iOS 上正常工作设备。
推荐阅读
- java - 使用 Java 8 流方法获取最后一个最大值
- android - 活页夹线程 ID
- javascript - 如何使用类在 JavaScript 中实现单例设计模式?
- node.js - 导出类的节点模块上的模块扩充:如何添加实例属性?
- sql - 将 nvarchar 日期 (DD/MM/YYYY) 转换为日期周期 (YYYY_MM)
- asp.net-core - 执行 API 方法时未调用 AWS API Gateway 自定义授权器
- outlook - 在 Microsoft Outlook 中,如何制定规则以将警报从特定发件人发送到另一个电子邮件地址?
- javascript - 交换 HTML
- c# - 如果我将字符串“更新”为与自身相同的值,会发生什么(在内存中)?
- angular - Angular 2 - 通过 CMS 自动路由 SPA?