我有一个 React Native 应用程序。截至上次更新,现在有一个与之相关的应用程序扩展。新创建的父应用程序配置文件/证书已生成。正确的权利已在苹果开发门户和 .entitlements 文件中得到确认。已正确添加应用程序组。该扩展程序还具有与之关联的适当的临时配置文件和证书。
应用在自动签名的调试变体中没有构建/安装问题。
该应用在自动签名时没有临时/发布变体的构建/安装问题。
我正在尝试构建和安装发布版本
但是,当手动签名应用程序时(我需要在 xcode 中执行此操作以确认没有问题可以通过 microsoft appcenter 调试我的分发问题),该应用程序构建良好,但不会安装在设备上。我收到“未安装应用程序”错误。
打开它说的问题:
<块引用>"可执行文件的签名无效
权利”。代码是 -402620394
。还有:Domain: com.apple.dt.MobileDeviceErrorDomain
,如果有帮助的话。没有
除堆栈跟踪之外的其他信息,但看起来不太具体
其他信息:
我尝试过的事情:
一些截图:
请不要建议使用自动签名。由于上述原因,我不能。我必须在我的分发工具 (appcenter) 中手动设置父应用程序的配置文件和 .p12 证书以及应用程序扩展的配置文件
有什么建议吗?
答案 0 :(得分:0)
总而言之,您永远无法将具有 App Store 分发认证的应用程序直接安装到您的手机中。只有 Apple 可以安装使用 App Store 证书签名的应用。
如果你想测试一些东西,那么你要么在试飞中测试东西,要么检查二进制文件的权限。您可以按照开发论坛 here 的说明进行操作:
<块引用>调试代码签名授权问题的第一步是 检查二进制文件的实际权限。 Xcode 的过程 设置权限非常复杂,它取决于各种 输入,所以首先检查输出而不是检查输出很重要 只看输入。
要检查二进制文件中的权限,请运行以下命令:
$ codesign -d --entitlements :- NetworkExtensionSample.app
Executable=…/NetworkExtensionSample.app/NetworkExtensionSample
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" …>
<plist version="1.0">
<dict>
<key>application-identifier</key>
<string>SKMME9E2Y8.com.example.apple-samplecode.NetworkExtensionSample</string>
<key>com.apple.developer.networking.vpn.api</key>
<array>
<string>allow-vpn</string>
</array>
<key>com.apple.developer.team-identifier</key>
<string>SKMME9E2Y8</string>
<key>get-task-allow</key>
<true/>
</dict>
</plist>