ios - Ionic 3 - 无法在 iOS 上安装生产应用程序

标签 ios cordova ionic-framework ionic2 ionic3

我正在使用 ionic 包构建我的 iOS 应用。

https://docs.ionic.io/services/package/

我为开发和生产创建了证书,包括推送。

https://docs.ionic.io/services/profiles/

开发 - 使用 ionic 包成功构建,安装在 iOS 上没有问题。

生产 - 使用 ionic 包成功构建,当我尝试在 iOS 上安装它时它开始正常安装应用程序,然后当快完成时应用程序消失并且最终没有安装,没有出现错误。

为什么会这样?

为了在我的设备上测试生产 .ipa,我通过 iTunes 软件安装它。 (我还没有在 App Store 中发布它)

开发 .ipa 也是如此,尽管对于这个它是给定的。

我发现了这个老问题,这表明它可能是由于捆绑 ID 不匹配造成的:

In-House App Disappears After Install

我的应用程序的 config.xml 中的小部件 ID 与 Apple Developer 上的应用程序 ID 相同。

是否还有更多我不知道的应该相同的地方?也许是我在创建证书时输入的信息?

我的最终目标是在 App Store 中发布此应用,它不是内部应用 - 我这样说是为了避免混淆。

最佳答案

我在构建我的 iOS 应用程序时遇到了同样的问题,经过一些研究后我得出了这个事实:

  1. 当您准备生产版本(商店应用程序)时,它将无法安装在开发设备中。如果您需要在开发设备中测试该生产应用程序,则需要使用 ADHoc Provisioning Profile 构建该应用程序。然后只有它能够让您安装在开发设备中。

    AdHOC provision profile 是一种分发配置文件,它允许您的应用程序安装在指定的设备上并在没有 Xcode 协助的情况下使用应用程序服务。它是您可以为应用程序创建的两种分发配置文件之一。 (您稍后使用其他类型的分发配置文件将您的应用程序提交到商店。)临时配置文件可确保您的应用程序的测试版本不会在您不知情的情况下被复制和分发。

当您准备好将您的应用分发给测试人员时,您可以创建一个临时配置文件,指定一个与您的一个或多个应用匹配的应用 ID、一组测试设备和一个分发证书。

App Store 版应用程序,顾名思义,仅在通过 App Store 分发时使用。它的存在是为了签署您的应用程序以通过 App Store 分发,不能用于任何其他目的。除非您通过 App Store 安装已由其签名的应用程序,否则它显然会失败。

如果您想将一个应用程序分发给一些设备供内部使用,并且分发时间相对较短,您应该使用 Ad Hoc 配置文件(我在上面解释过);如果长期使用大量用户,您需要注册为公司开发人员并遵循不同的流程。

有关 Adhoc 的更多详细信息,请参阅以下链接:

https://developer.apple.com/library/content/documentation/IDEs/Conceptual/AppDistributionGuide/TestingYouriOSApp/TestingYouriOSApp.html

关于ios - Ionic 3 - 无法在 iOS 上安装生产应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45270759/

相关文章:

javascript - Jquery Mobile 和 Cordova 事件 Pageinit 绑定(bind)不起作用

angularjs - 如何让发起的Controller知道范围值已经改变

android - Ionic 2 安卓性能

ionic-framework - 如何在 Cordova Media Plugin 中的另一个播放器中并行播放音频时停止音频

ios - 如何在 uitableviewcontroller 中动态添加单元格?

ios - 为什么 .crash 日志在 UIPresentationController 中显示崩溃,但我的应用程序不使用 UIPresentationController?

ios - 源文件中的Objective-C成员变量与属性

Android 未在 ionic 应用程序中请求权限

IOS、AVCam,如何预览拍摄的图像?

java - 通过桌面浏览器使用 Java 插件调试 Phonegap