排查 Power Apps 中包装功能的问题
本文可帮助你解决 Microsoft Power Apps 中包装功能最常见的问题。
问题 1 - 包装生成失败
如果包装生成失败,可以执行以下步骤来解决此问题。
步骤 1:验证图像是否为 PNG 格式
确保换行中使用的图像采用 PNG 格式。 以包装方式使用除 PNG 以外的任何格式的图像都会导致生成失败。 使用图像转换器将图像另存为 .png 文件,或确保原始图像文件采用 PNG 格式。
重要
手动将图像文件扩展名从 .jpeg 或任何其他格式更改为 .png 不会自动将图像重新格式化为 PNG 格式。
步骤 2:验证是否已正确配置 App Center
应用中心链接必须创建为组织中的应用,而不是独立应用。 以下屏幕截图显示了如何在包装向导中创建新组织。
有关如何在包装向导中自动创建新位置的详细信息,请参阅“使用向导Create适用于 iOS 和 Android 的本机移动应用”部分中的步骤 5:管理输出。
步骤 3:验证密钥保管库配置是否正确
确保已创建 Azure 服务主体,并正确添加服务主体角色。 有关详细信息,请参阅使用向导Create适用于 iOS 和 Android 的本机移动应用中的步骤 1 和 2。
确保密钥保管库包含适用于 iOS 和/或 Android 的所有必需证书、机密和标记:
- iOS:两个标记、一个证书和一个机密
- Android:一个标记和一个证书
有关详细信息,请参阅在 Power Apps 中包装Create Azure 密钥保管库。
步骤 4:如果具有所有正确的配置,请重试
如果包装生成在验证包装项目具有所有正确的配置后仍然失败,请参阅本文包装 中的其他问题 部分。
问题 2 - 我的应用禁用了“包装”按钮
只能包装具有编辑权限的应用。 确保对要包装的应用具有编辑权限,然后重试。
问题 3 - 无法保存我的项目或触发包装生成
若要解决此问题,可以:
- 更新到最新的包装解决方案版本,然后重试。
- 确保没有 UI 验证错误阻止 “保存” 或 “生成” 提交。
问题 4 - 无法在设备上安装包装的移动应用
请确保已对输出的应用程序进行签名。 可以通过配置密钥保管库并在生成触发时提供密钥保管库或手动签名来对其进行签名。 有关代码签名的详细信息,请参阅:
验证移动设备是否满足这些 最低要求。
问题 5 - 无法登录到包装的移动应用或看不到数据
如果无法登录到包装的移动应用,请验证:
Microsoft Entra应用已正确配置。
已正确添加应用的所有 API 权限。 有关如何查看和配置应用的 API 权限的详细信息,请参阅以下屏幕截图和 配置 API 权限。
脚本
Add-AdminAllowedThirdPartyApps
已成功运行。 有关详细信息,请参阅 允许在环境中注册的应用。Microsoft Entra应用类型为多租户。 在Microsoft Entra应用的“身份验证”选项卡下,支持的帐户类型应为任何组织目录中的帐户 (任何Microsoft Entra目录 - 多租户) 。
已为 iOS 和 Android 创建了适当的重定向 URI。 对于 Android,请确认已正确提供哈希。 有关配置重定向 URI 的详细信息,请参阅 配置平台设置。
问题 6 - Power Apps 的 Azure 密钥保管库中的错误
以下 Azure 密钥保管库错误可能会在 Power Apps 的包装中显示,可以进行纠正。
错误代码1000118
错误代码 | 说明 |
---|---|
1000118 | 找不到默认订阅或缺少访问权限 |
注意
自 2024 年 3 月 30 日起,Azure AD 和 MSOnline PowerShell 模块已弃用。 若要了解详细信息,请阅读 弃用更新。 在此日期之后,对这些模块的支持仅限于 Microsoft Graph PowerShell SDK 和安全修补程序的迁移帮助。 弃用的模块将继续运行到 2025 年 3 月 30 日。
建议迁移到 Microsoft Graph PowerShell,以便与以前为 Azure AD) Microsoft Entra ID (交互。 有关常见的迁移问题,请参阅 迁移常见问题解答。 注意: MSOnline 1.0.x 版可能会在 2024 年 6 月 30 日之后遇到中断。
确保 Azure 密钥保管库位于租户 的默认订阅中。
以管理员身份在 PowerShell 中运行以下命令:
Connect-AzureAD -TenantId <your tenant ID>
New-AzureADServicePrincipal -AppId 4e1f8dc5-5a42-45ce-a096-700fa485ba20 -DisplayName "Wrap KeyVault Access App"
在Azure 门户,转到默认订阅。 在“访问控制 (IAM) ”页上,向表示应用的服务主体添加读者角色分配,例如包装 KeyVault Access 应用。 请确保它位于 订阅的 IAM 和 Keyvault 的 IAM 中。 步骤如下:
错误代码1000119
错误代码 | 说明 |
---|---|
1000119 | Keyvault 不存在,或者 Keyvault 缺少访问权限 |
验证 Azure 密钥保管库是否在租户 的默认订阅中。
请确保在创建密钥保管库时选择了“ 保管库访问策略 ”选项。
以管理员身份在 PowerShell 中运行以下命令:
Connect-AzureAD -TenantId <your tenant ID>
New-AzureADServicePrincipal -AppId 4e1f8dc5-5a42-45ce-a096-700fa485ba20 -DisplayName "Wrap KeyVault Access App"
在Azure 门户,转到默认订阅。 在“访问控制 (IAM) ”页上,向表示应用的服务主体添加读者角色分配,例如包装 KeyVault Access 应用。 请确保它位于 订阅的 IAM 和 Keyvault 的 IAM 中。 步骤如下:
将访问策略添加到 Azure 密钥保管库。
错误代码1000120
错误代码 | 说明 |
---|---|
1000120 | 在密钥保管库上找不到组织 ID 标记 |
转到 Power Platform 管理中心,选择“ 环境 ”,然后选择包装项目所在的环境。
复制 组织 ID。
在Azure 门户的密钥保管库中,转到“标记”,创建名为“organization-id”的新标记,并将组织 ID 添加到此标记。
错误代码1000121
错误代码 | 说明 |
---|---|
1000121 | Android 密钥存储无效。 缺少标记和/或证书 |
导入 Android 证书。
为证书添加新标记。
标记名称应基于在包装项目中使用的捆绑包 ID。 例如,如果已包装应用的 捆绑 ID 为 com.testApp.wrap,则新的 标记名称 应为 com.testApp.wrap.keystore。
标记值应对应于在上一步中上传证书文件时为证书选择的名称。 例如,如果 证书 名为 AndroidWrapCertificate,则 Tag 值 的值也应为 AndroidWrapCertificate。
错误代码1000122
错误代码 | 说明 |
---|---|
1000122 | iOS 证书无效 |
导入 iOS 证书。
为证书添加新标记。
标记名称应基于在包装项目中使用的捆绑包 ID。 例如,如果已包装应用的 捆绑 ID 为 com.testApp.wrap,则新的 标记名称 应为 com.testApp.wrap.cert。
标记值应对应于在上一步中上传证书文件时为证书选择的名称。 例如,如果 证书 名为 iOSCertificate1,则 Tag 值 的值也应为 iOSCertificate1。
错误代码1000123
错误代码 | 说明 |
---|---|
1000123 | iOS 配置文件无效 |
将 预配配置文件 作为 机密导入。
为预配配置文件添加新标记。
标记名称应基于在包装项目中使用的捆绑包 ID。 例如,如果已包装应用的 捆绑 ID 为 com.testApp.wrap,则新的 标记名称 应为 com.testApp.wrap.profile。
标记值应与在上一步中上传 povisioning 配置文件时为机密选择的名称相对应。 例如,如果 机密 名为 iOSProvisioningProfileSecret,则 Tag 值 的值也应为 iOSProvisioningProfileSecret。
Power Apps 包装中的其他问题
对于所有其他问题,或者如果在执行这些步骤后问题仍然存在,请参阅本文后面的 后续步骤 ,通过支持请求报告问题。 需要提供重现视频和/或屏幕截图,以及可通过以下方式获取的会话 ID:
- 在登录屏幕上,转到右下角以选择齿轮图标,然后选择“ 会话详细信息”。
- 打开应用后,点击并按住屏幕上,然后选择“ 会话详细信息”。
后续步骤
如果本文中未列出你的问题,可以 搜索更多支持资源,或联系 Microsoft 支持人员。 有关详细信息,请参阅 获取帮助 + 支持。