Xcode 给了我这个信息:
找不到已安装的应用程序安装声称已成功,但在设备上找不到应用程序。bundleId = (null)
我刚开始使用豆荚。
我该如何解决?
Xcode 给了我这个信息:
找不到已安装的应用程序安装声称已成功,但在设备上找不到应用程序。bundleId = (null)
我刚开始使用豆荚。
我该如何解决?
我在通过 XCode 11 Beta 4 在 iOS 13 上测试 Cordova 应用程序时遇到了同样的问题。通过遗留系统构建解决了它(文件>工作区设置...>构建系统>遗留构建系统)。
希望能帮助到你
我通过典型的项目清理步骤解决了这个问题:
这是一个代码签名问题。Xcode 11 要求您将“Apple Development”证书添加到您的开发配置文件中,它们会自动添加到您的证书和配置文件中。将该证书添加到您的配置文件中,重新下载您的开发配置文件和 vwala。
在 Xcode 11 beta 5 中,我遇到了同样的错误。我无法安装该应用程序。我什至将应用程序上传到 App Store Connect,然后尝试使用 TestFlight 安装,但应用程序下载后无法安装,非常奇怪。App Store Connect 没有错误。我通过使用模拟器运行应用程序发现了问题。在模拟器上运行应用程序后,Xcode 给了我一个详细的错误消息。就我而言,我有多个具有相同 Bundle ID 的框架。
我遇到了同样的错误,但上述解决方案都不适合我。
就我而言,我使用的是免费的 Apple 开发者帐户,在尝试安装第 4 个应用程序后出现此错误。免费帐户的安装限制为 3。我删除了我已经拥有的 3 个应用程序之一,并且安装按预期工作。
我得到了同样的错误:
找不到已安装的应用程序安装声称已成功,但在设备上找不到应用程序。bundleId = (MY_BUNDLE_ID)" 但使用 MY_BUNDLE_ID 代替 "null
Xcode11 更新后出现此错误
解决方案:
我的 Project 和 ProjectTests 有不同的开发团队。项目有所有者团队,项目测试有个人团队
而且我没有机会通过 Xcode 界面将团队更改为所有者。所以我在构建设置中进行了设置 - 刚刚进入我的团队(也启用了自动管理证书)。
是的,它在 Xcode UI 中看起来是一个错误(红色标签),但能够安装在真实设备上。
Xcode 11 (11a420a)
我遇到了类似的问题,尝试了所有上述解决方案(例如,更改为旧版、清理和构建等)......但最终解决方案是使用我使用的外部框架,我通过将选项更改为Embed &从Embed 签名而不签名.....不确定这可能是 Xcode 问题
在我的情况下,我使用的是 Xcode 11 GM 种子和 iOS 13 测试版,并且由于“自动”失败,我对手动(分发)进行了代码签名。我让我的团队代理允许我的用户“管理员”角色,进入 Apple Developer 的门户并编辑“无效”配置文件以选中明确提及“Xcode 11”的复选框。下载个人资料后,我的团队代理将我的角色放回“成员”,一切顺利。
迦太基工作解决方案
General
->Frameworks, Libraries, and Embedded Content
并将框架更改为Do Not Embed
(在我的情况下Alamofire.framework是问题)Build Phases
, select +
New Run Scrip Phase
, insert/usr/local/bin/carthage copy-frameworks
用于脚本外壳,并用于Input files
添加$(SRCROOT)/Carthage/Build/iOS/Alamofire.framework
现在它应该可以工作了
我通过在“签名和功能”屏幕中勾选“自动管理签名”解决了这个问题。
此处列出的其他解决方案都不适合我。
我最近更新到 Xcode 11 时遇到了这种情况;如果您在设备上进行测试,请转到“构建设置”,然后将“代码签名身份”下的所有内容更改为“iOS 开发人员”。这应该可以解决问题。然后,一旦您准备好启动,请确保您已设置 iOS 分发。
我遇到了同样的问题,我的代码没有其他答案中提到的任何问题(使用相同包标识符的框架、遗留系统等)。
我的解决方案是先安装应用程序作为侧面加载,然后以正常方式(Cmd+R)运行应用程序。
首先,为您的项目制作一个IPA(有很多方法可以做到这一点,我通过压缩名为Payload的文件夹来制作应用程序文件。您可以选择其他方式,您只需要一个IPA文件)。
接下来,在 Xcode 中打开设备和模拟器(Cmd+Shift+2)。
现在单击 INSTALLED APPS 部分中的小加号按钮 (+),系统会要求您选择 IPA。选择您的 IPA,它将安装在设备上。
现在设备上存在给定包标识符的应用程序,您的运行命令将按预期工作。
只需点击 Cmd+R,您的项目就会在设备上运行。
在我的情况下,问题是使用控制台日志通过日志发现的,我从云中看到一个错误,说明installd
我的plist.info
文件有问题。它没有说到底是什么但是修复我的 plist 文件解决了它。就我而言,我有 3 个 plist 文件(iPhone、watch 和 watch 扩展名),问题出在我的watch plist.info
文件上(我NSLocationAlwaysUsageDescription
不小心添加了,删除它解决了问题)。
固定我的。是由于在构建阶段没有复制 Alamofire 框架(通过 Carthage)引起的(以前在 Xcode 的嵌入式库部分中,但现在已经消失并且选择嵌入类型不起作用)。
脚本主体是:/usr/local/bin/carthage copy-frameworks
路径$(SRCROOT)/Carthage/Build/iOS/Alamofire.framework
用于输入文件和$(BUILT_PRODUCTS_DIR)/$(FRAMEWORKS_FOLDER_PATH)/Alamofire.framework
输出文件。
希望这有助于或让您找到解决方案。
我在选择“iPhone Distribution”配置文件/签名证书时看到此错误 - 当我切换到“iPhone Developer”时它清除了
我终于找到了解决方法(至少对我而言)
我正面临这个问题(不知从何而来),也许是开发/生产证书的一些问题。我在“签名和功能”上有一个手动配置,所以当我切换到自动时,只需解决问题。(对不起,我的英语不好)
对于 IOS 13,在使用 Xcode-beta 安装应用程序时,唯一有效的方法是重新启动连接到计算机的手机
对我来说,这个问题与 Carthage 下载的 Alamofire 库有关。确保选择“不嵌入”并让 Carthage 复制库。
当您尝试使用 App Store 的配置文件在设备上运行 App 时,会发生这种情况。确保您正在使用 Development 或 Adhoc Profiles 运行。
另一个原因可能是,您可以运行一些架构剥离脚本来生成 IPA。检查这是否引发任何错误。
我遇到了这个问题,并在日志中注意到了这一点:
-[MIBundle pluginKitBundlesSkippingPlatformValidation:withError:]: Ignoring plugin at (path to my app extension) because it doesn't work on this OS version
在构建设置中为我的扩展更新部署目标版本解决了这个问题。
这已在Xcode 11.2中解决。使用 Xcode 11.2,您现在应该会收到一个错误,表明应用程序安装失败,而不是一个错误,表明它已安装但无法启动。该错误还应包含有关安装失败原因的一些详细信息。如果细节不够,我建议瞄准模拟器设备而不是真实设备,因为那样会产生更高的保真度错误。
由于 Siri 扩展,它对我的项目造成了影响。在“构建阶段”“嵌入应用程序扩展”中删除 xxxSiriExtension.appex 构建并再次添加。它解决了我的项目
在我注意到 benchuk 使用控制台找出他有问题的原因之前,我几乎尝试了这个问题的每一个答案。
我查看了控制台搜索installd
,发现我添加到项目中的“胖”框架实际上已签名。
签名与应用程序的其余部分不匹配,导致安装静默失败。
知道出了什么问题,我可以简单地删除签名:
codesign --remove-signature Some.framework
在 Xcode 窗口的顶部,在运行/停止旁边单击您的应用程序图标,然后选择管理方案。确保运行和测试使用构建配置“调试”。Xcode 将这些更改为“发布”。别问我为什么!使用 Xcode v 11 (11a420a)
这个问题也有很多赞成的答案,但没有一个适合我的情况。对我来说,我无法在模拟器或设备中运行。
我只是一次又一次地播客,它的工作deintegrate
。install
清理项目并
pod deintegrate
pod install
希望这会帮助一些人
请检查您的所有项目目标,例如使用相同帐户登录的 projectnameTests
此错误背后可能有多种原因。
对我来说,这是因为XCode 中的内部版本号为空。检查你是否也发生了同样的事情。
我在处理共享扩展时遇到了同样的问题。这里建议的解决方案都不适合我。
我关心调试和日志记录。我无法调试和/或记录。起初我认为扩展程序不起作用,但运行测试并验证它实际上正在执行,但由于某种原因我无法调试或记录。
我能想到的最好方法是手动附加调试器,在我想要记录的位置添加断点,编辑断点并添加操作以记录并在评估后继续。以下是执行此操作的步骤:
Product/Scheme/Choose-Your-Scheme
Debug/Attach to Process by ID or Name...
. 然后键入扩展名或其捆绑包 ID。Automatically continue after evaluating the actions
。在这里你可以找到我未回答的问题。
当我在构建完成之前删除我试图运行的应用程序的旧实例时,我遇到了这个问题。
解决方案是简单地再次构建并运行该项目。
很奇怪,将我的项目的根文件夹重命名为其他东西对我有用。原因可能是某个文件夹的现有名称在某处缓存了一些 xcode。
tl;dr 您不能使用App Store 分发证书从 Xcode 构建到您的设备。您只能从 TestFlight 或 App Store 安装 Apple 签名的应用程序。
原因是使用分发证书构建的应用程序可以安装在任何设备上,这对 Apple 来说是一个很大的禁忌。
当我故意尝试从 Xcode 测试我的发布过程时遇到了这个问题。我想看看我的应用扩展的配置文件是否具有正确的权利,但从架构的角度来看这是不可能的。
你只需安装它。没有提示信任开发团队。
您会收到开发人员团队不受信任的提示,您需要手动信任它:
因此,使用 App Store 分发证书签名的应用不会向用户提示该消息,因此 Apple 不希望允许ipa
在每台设备上免费安装该消息并窃取用户信息!
对我来说,我有一个构建阶段脚本,旨在从应用程序中剥离模拟器架构(当它发布到 App Store 时)。
我读过一个建议,为模拟器构建会提供更好的错误详细信息,并发现脚本在每次构建时都在运行,所以我将其切换为“仅在安装时运行脚本”,这似乎为我解决了这个问题。
解决方案 #101 - 需要从设备中删除旧实例
在我的 iOS 13 设备上运行时遇到此问题,使用Xcode 11.1,Mac OS 最近更新到Catalina并期望它与此有关......但没有。
解决方案要简单得多....
我从设备中删除了一个非常旧的应用程序实例(长按,当然按 x)。从 XC 重新构建构建,一切正常!
看起来这个有各种正确的答案,我的就是这个,它可能对其他人有帮助。
我也有这个问题。如果有人无法用另一个答案解决它并在他的应用程序中使用框架,我的解决方案:
我使用了一个框架(tesseract),但没有签名,所以我无法使用该应用程序,但 Xcode 没有识别出问题。要解决这个问题,请转到您的项目文件,将框架的“嵌入”选项更改为嵌入和签名。
尝试在设备上安装我们的应用程序时,我遇到了类似的错误。由于各种原因,我们最近为该应用切换了团队,显然,某些标识符没有更改。
如果您遇到这种情况,请转到 Apple Developer 门户并找到您的团队标识符。它们看起来像这样。NXD2KNAXM
.
打开您的yourproject.xcodeproj/project.pbxproj
文件并简单地用新标识符搜索替换旧标识符。
这种方法真的是贫民窟,但它对我有用。
就我而言,我只是将显示名称从重命名Something
为something
。
我被迫恢复在我的设备上运行。
配置:Xcode 11.0,iOS 13.1.2
我通过转到 Build Settings > Code Signing Identity > Debug 修复了我的问题。确保您拥有适当的“开发证书”。
对我来说,它正在将 Xcode 项目更新为所需的升级,更新后它运行良好。
只需转到问题导航器(按 command + 5)> 查找缺少的项目更改并更新它。
我在 Xcode 11 beta 版本中运行我的代码,所以有些东西坏了,在将它更新到所需的设置后它又恢复了正常。
尝试更改frameworks target
为 13.0 和Project Target
iOS 9.0
为了在我的 Xcode 版本 11.0 中修复它,问题是框架目标和项目目标。