问题标签 [code-signing-entitlements]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
5285 浏览

ios - Xcode - 可执行文件仅在 RELEASE 模式下使用无效权利进行签名

这个问题类似于The executable gets signed with invalid entitlements in Xcode。但不同的是,对我来说它适用于调试模式:

在此处输入图像描述

但不适用于发布模式:

在此处输入图像描述

对于发布我有一个例外:

在此处输入图像描述

但是,对于DEBUG来说一切都很好:如何使其同时适用于:发布和调试?

0 投票
1 回答
79 浏览

ios - 从 Web 服务器更新 App Store 应用程序

我想知道是否可以允许用户通过浏览器下载用更新版本替换从 App Store 安装的应用程序。

我的用例是,我希望用户能够通过 App Store 下载和玩游戏,但如果他们认为合适,则允许他们将应用程序更新为成人内容版本(App Store 不允许)。

用户步骤的细分如下:

1.) 用户从 App Store 下载应用程序。

2.) 玩游戏,无聊,想要成人内容

3.) 导航到托管成人版 .IPA 的 URL(例如https://myappcompany.com/fungameadultversionupdate/index.html托管在 manifest.plist 等旁边)

4.) App 下载并替换 App Store 版本。

我知道,如果没有从 App Store 下载的现有应用程序,现在就有可能实现这一点(iPhone 会拒绝 IPA,因为它没有经过 Apple 签名)。但是假设更新的应用程序是由所有相同的密钥(Apple iOS 证书、标识符、配置文件等)编译和签名的。

App Store IPA 和更新后的 IPA 之间的唯一区别是更新后的 IPA 将具有稍微修改的代码库,并且不会由 Apple 签名。

希望这不会太混乱。我很感激也许我没有使用所有正确的术语,我对 iOS 开发很陌生。唯一阻止我直接发现这一点的是我首先需要在 App Store 上获得批准的应用程序来测试它。

0 投票
1 回答
928 浏览

xcode - 如何确保应用 OS X 应用程序权利?

我已经在 Xcode 中配置了权利,但它们没有被放入已编译的应用程序包中。我需要做一些额外的步骤吗?

我正在编写一个 OS X“开发者 ID”签名的应用程序(不适用于 AppStore),并且为了能够实现与父应用程序共享首选项的扩展,我需要将它们放在同一个应用程序组中。

我已经在 Xcode 中配置了 App Groups,我在 plist 中看到了$Extension.entitlements它们$ParentApp.entitlements

但是,在构建的产品中$Extension.app/Contents/_CodeSignature/CodeEntitlements类似于没有我配置的组的默认权利文件,并且在父应用程序中该文件根本不存在。

我什至尝试使用明确的权利文件再次签署应用程序:

但同样,它不会被添加到$ParentApp.app/Contents/_CodeSignature/CodeEntitlements.

在运行时,父应用程序和扩展程序似乎不在同一个应用程序组中:它们将首选项 ( [NSUserDefaults…initWithSuiteName:teamIdEtc]) 写入自己的子目录中,~/Library/Containers而不是 中的共享目录~/Library/Group Containers

0 投票
1 回答
2521 浏览

ios - 在 iOS 设备 (iPhone / iPad) 上安装应用程序或从 Xcode 创建 .ipa,无需代码签名和开发人员帐户

我是 iOS 开发和自学的新手。我已经创建了几个应用程序,并且已经在 iOS 模拟器中进行了测试。这些应用程序运行良好,在构建前后没有任何问题和警告。

我想在我的 iPhone 上运行应用程序进行实时测试。但无法从 Xcode 中提取 .ipa 包,因为我还没有订阅开发者的帐户(稍后会做)。尝试了一些调整并按照以下步骤操作:-

  1. 更新了 SDKsettings.plist 并将 CODE_SIGNING_REQUIRED、ENTITLEMENTS_REQUIRED 设置为 NO 值。(阅读技术博客
  2. 创建存档和导出方法为:“Save for Ad Hoc Deployment”
  3. 再次要求开发者帐户的进一步步骤。因此尝试以两种方式从 xcarchive 获取.app /.ipa

    一个)。运行命令行:
    xcodebuild -exportArchive -exportFormat ipa -archivePath /Users/../Library/Developer/Xcode/Archives/..\app.xcarchive/ -exportPath /Users/../Desktop/app.ipa

    乙)。在上述 xcarchive 包下复制 .app 文件。Dargged 并丢弃到 iTunes “MyApps”

  4. 在 iTunes 中,我注意到应用程序大小从 2.2 MB 增长到了 8.4 MB。

  5. 使用 USB 连接 iPhone 并执行安装,然后单击同步/应用。应用程序已安装在设备上,但 iTunes 显示“正在安装”

  6. 断开USB,安装的应用程序没有图标图像。当触摸打开应用程序时,它会开始安装并且永远不会打开。

请帮助提出建议,以便我可以在没有开发人员帐户的情况下测试我的应用程序

0 投票
2 回答
1737 浏览

ios - xcodebuild 存档未通过 ITMS 验证

我们的应用有一个 watchkit 应用 + 扩展。来自 XCode IDE 的档案总是通过 iTunes 商店验证。但是,通过 xcodebuild 命令工具(Xcode 6.4;构建版本 6E35b)生成的存档无法通过此验证,并出现以下错误:

归档和导出的 Makefile 如下所示:

非常感谢任何建议/帮助。提前致谢。

0 投票
0 回答
270 浏览

ios - iCloud KVStore - 代码签名权利错误

我正在iCloud KVStore使用多个应用程序配置风景。在这个场景中,您有一个写入其 kvstore 容器的主要应用程序,以及从主要应用程序的 kvstore 读取的辅助应用程序。主要应用程序有一个 kvstore 标识符,默认情况下(激活时iCloud Key-Value Store Capability)是

正如 Apple's Doc 中多个应用程序的通用键值存储场景所述:

为多个应用程序配置公共键值存储

您必须为除主要应用程序以外的所有应用程序指定主要应用程序的 kv-store 标识符,例如

在哪里

ABCDEFGH.com.myCompany.myApp$(TeamIdentifierPrefix)$(CFBundleIdentifier)价值观。

在运行辅助应用程序(在这种情况下是 tvOS 应用程序)时,如果它具有默认的 kv-store 标识符,则它可以工作,它不会运行(它编译),当使用请求的ABCDEFGH.com.myCompany.myApp值时,用于读取共享iCloud KVStore

错误是:

您的应用程序的代码签名权利文件中指定的权利与您的配置文件中指定的权利不匹配。(0xE8008016)。

我还尝试以编程方式检查 Team-ID 标识符的值,以确保它是在 iTunesConnect 门户上定义的值,如下所示:

事实上它是正确的:

ABCDEFGH.com.myCompany.myApp

我已经尝试了一个已经在 AppStore 上的应用程序,以及一个正在开发中但在 AppStore 上配置的应用程序(因此 BundleID,此 BundleID 的配置文件,都来自 iTunes Connect),但是错误仍然存​​在。

0 投票
1 回答
4080 浏览

ios - 如何在 Xcode 7 中为 Homekit 添加 app_name.entitlements 文件

我正在开发包含 Homekit 功能的应用程序。我想在权利文件中添加“com.apple.developer.homekit”。如何为应用程序添加 .entitlements 文件。

0 投票
1 回答
1091 浏览

macos - 非常令人沮丧的沙盒错误

作为序言,我没有更改我的应用程序中的任何代码或权利。它总是能很好地构建和运行,但现在突然间我收到了这个错误。

12/8/15 10:05:45.388 AM appleeventsd[51]:一个 pid 为 2414 的沙盒应用程序,使用 appleeventsd 签入“XXX”,但它的代码签名无法被 appleeventsd 读取和验证,因此它无法接收 AppleEvents按名称、捆绑 ID 或签名作为目标。将应用程序安装在 /Applications/ 或其他世界可读的位置以解决此问题。错误=错误:#100013 { "NSDescription"="SecCodeCopySigningInformation() 返回 100013,-。" } (handleMessage()/appleEventsD.cp #2098) com.apple.root.default-qos

我试过以下

  1. 按照错误提示在“应用程序”中安装应用程序。
  2. 重新启动计算机。
  3. 删除容器并清空垃圾箱。
  4. 杀死cfprefsd。根用户和用户。
  5. 重新安装 Xcode。
  6. 删除我的库中的“开发人员”文件夹。
  7. 使用全新安装的我的应用程序在虚拟机中运行该应用程序。
  8. 重新创建我所有的开发人员证书、配置文件等...

以上都不起作用。

我还尝试了以下链接中的所有建议

没有什么能解决这个问题。我的应用程序突然停止工作。

0 投票
1 回答
233 浏览

xcode - 由于权利问题,Mac 应用程序验证失败

我正在尝试在 Mac App Store 之外分发我的 Mac 应用程序版本。我复制了我的目标,使用“开发者 ID”对其进行了签名,删除了 iCloud 功能,创建了一个新的权利文件,我在其中删除了 iCloud 和 APS 权利,并在新目标中引用了它。目标构建和归档很好,但是当我尝试使用“验证开发人员 ID 签名的应用程序”来验证它时,我遇到了一个错误:

在此处输入图像描述

在验证步骤之前,有这个屏幕: 在此处输入图像描述

因此,应用程序包具有正确数量的权利,但“A”文件夹显示不同的数字,并且确实包含 com.apple.developer.aps-environment 权利。这是从哪里来的,为什么它与应用程序指定的权利文件不同,我该如何编辑它?


编辑:在 Xcode 中添加目标的代码签名设置,如果有帮助的话:

在此处输入图像描述

0 投票
1 回答
175 浏览

macos - 协同设计/打包后 OSX Mac 商店应用程序联网失败

我有一个内置于 Unity 的应用程序,并设置要在 Mac App Store 上发布,它的网络任务在 OS X 构建中工作得很好,这不适用于应用程序商店,但一旦构建需要 App Store 验证/协同设计联网失败。该应用程序和构建过程不久前还有效,但现在失败了。

我在权利中包含了网络权限,并且在系统控制台中没有看到任何沙盒错误的痕迹。应用内购买网络调用成功,但如果我检查终端中其他任何内容的流量,则没有数据移入或移出。

因此,我想知道是否有人对可能导致此问题的原因有任何想法,或者我可以使用进一步的测试来找出问题所在。