简体   繁体   English

Cordova iOS项目:xCode 9缺少一些权利

[英]Cordova iOS project: xCode 9 missing some entitlements

The xCode project I'm working on is a hybrid app generated by Cordova/Ionic with: 我正在研究的xCode项目是由Cordova / Ionic生成的混合应用程序,具有:

cordova build ios

In my xCode 9, when I go to "Targets" → "General" Tab → "Signing (Release)" section I can see that my Provisioning Profile has 12 entitlements, as you can see in the following image: 在我的xCode 9中,当我转到“目标”→“常规”选项卡→“签名(发布)”部分时,我可以看到我的Provisioning Profile具有12种权利,如下图所示:

常规选项卡中的12种权利

Note that "aps-environment" is included. 注意包括“ aps-environment”。

Now, after archive process ("Product" → "Archive", click in the "Export..." button and choose "App Store" option) and selecting the same provisioning profile I can see the same 12 entitlements (What is great), as you can see in the next pic. 现在,在存档过程之后(“产品”→“存档”,单击“导出...”按钮,然后选择“应用程序商店”选项),然后选择相同的配置文件,我可以看到相同的12项权利(太好了) ,如下图所示。

存档过程后获得12项权利

But now, after I click in the "Next" button I can see only 7 entitlements in the summary. 但是现在,在单击“下一步”按钮后,摘要中仅可以看到7种权利。 Note that "aps-environment" is not present: 请注意,不存在“ aps-environment”:

摘要中的7种权利

As a consequence my I'm receiving an e-mail message from App Store team saying that my .IPA is "Missing Push Notification Entitlement". 结果,我收到了来自App Store团队的电子邮件,说我的.IPA是“缺少推送通知权利”。 The capability "Push Notifications" is enabled in the "Capabilities" tab. 在“功能”选项卡中启用了“推送通知”功能。

I have tried reinstalling my provisioning profile, but not worked. 我尝试重新安装我的配置文件,但是没有用。

How can I fix it? 我该如何解决? Am I forgetting something? 我忘记了什么吗?

Thanks for the help. 谢谢您的帮助。

Solved. 解决了。

For some reason cordova build ios is generating the native project with the value of the key "Code Signing Entitlements" pointing to the wrong file location. 出于某种原因, cordova build ios会使用指向错误的文件位置的键“代码签名权利”的值cordova build ios成本机项目。

So in the tab "Build settings", "Signing" section I changed the value <ProjectName>/Resources/value <ProjectName>.entitlements to value <ProjectName>/value <ProjectName>.entitlements for the key "Code Signing Entitlements" and all worked. 因此,在“构建设置”选项卡的“签名”部分,我将键“代码签名权利”的值<ProjectName>/Resources/value <ProjectName>.entitlements为值<ProjectName>/value <ProjectName>.entitlements 。一切正常。

修复文件位置

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM