且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

iOS 12 iPad拒绝启动请求-Xcode

更新时间:2023-12-04 16:13:46

经过几天的研究并感谢@Little Green Viper的帮助,我找到了解决方案.

基本上,某些 Apple全球开发者关系认证机构在更新后无法正常工作,但是它能够在iOS 11上成功编译. 然后,最具风险的解决方案是先删除所有 Apple Worldwide Developer Certificates ,但尝试在Mac上创建新用户.

(系统偏好设置用户和组新用户).

现在,您必须选择,使用新用户或重新签署证书.就我个人而言,我选择了第一个选项.

I've been updating an application for more than 5 years without problems, until yesterday.

I updated my iPad to iOS 12, but, each time I try to run it, I got the message:

iPad has denied the launch request

I tested in other physical devices with iOS 11 and simulators, and this error happens only with the devices with iOS 12.

What I tried to solve this?

  • Re-generate my certificates in the Apple Developer page.
  • Editing my scheme to 'Debug Configuration' to 'Release' and checking and unchecking 'Debug executable'.
  • Restart my Mac and restart the iPad
  • Enabling and disabling 'Wait for executable to be launched'

And also, each solution of this thread: Xcode 9 error: "iPhone has denied the launch request"

And after try each one of those alternatives, the problem persist only with the devices WITH iOS 12.

Someone has an idea about how can solve this?

UPDATE I debugged my app, and this is whole the log:

predeterminado  10:33:00.516648 -0600   trustd  cert[0]: MissingIntermediate =(leaf)[force]> 0
predeterminado  10:33:00.516722 -0600   trustd  cert[0]: NonEmptySubject =(path)[]> 0
predeterminado  10:33:00.521320 -0600   SpringBoard [com.mycompany.myapp] Generating image data for snapshot: <XBApplicationSnapshot: 0x1115c11f0; identifier: 5E831360-7FEE-4255-A6FB-08712EF1D226; launchInterfaceIdentifier: __from_UILaunchStoryboardName__; contentType: GeneratedDefault> {
    creationDate = 20 de septiembre de 2018, 10:33:00 a. m. GMT-6;
    keepsImageAccessUntilExpiration = NO;
    hasGenerationContext = NO;
    context = {
        contentType = GeneratedDefault;
        fullScreen = YES;
        referenceSize = {1024, 1366};
        interfaceOrientation = LandscapeLeft;
        additionalContext = {
            statusBarSettings = <XBStatusBarSettings: 0x282f43d00; hidden: NO; style: 0x0; backgroundActivityEnabled: NO>;
        }
    }
    imageContext = {
        scale = 2.0;
        opaque = YES;
        fileRelativeLocation = none;
    }
}
predeterminado  10:33:00.585893 -0600   SpringBoard com.mycompany.myapp:10:11:3:1:Application replaced
predeterminado  10:33:00.592674 -0600   SpringBoard [com.mycompany.myapp] Application installed using default data provider
predeterminado  10:33:00.638304 -0600   dasd    com.apple.CFNetwork-cc-87-19005-Task <6A4245D9-BABF-4974-899B-B744DCB219AE>.<com.apple.cloudkit.cloudd>.<route=usmia-edge.icloud-content.com:outOfProcess=T:allowExpensive=T:powerNap=F:adaptive=T:app=com.apple.mobileslideshow:2app=com.apple.mobileslideshow.PhotosMessagesApp:disc=T:retry=F:pool=com.apple.cloudkit.BackgroundConnectionPool:uuid:C3F50637-0E71-4FCD-A8B5-DB01E2F3D518>.<1>:9D4C2B:[
    {name: ApplicationPolicy, policyWeight: 5.000, response: {Decision: Can Proceed, Score: 0.31}}
    {name: DeviceActivityPolicy, policyWeight: 10.000, response: {Decision: Can Proceed, Score: 0.60}}
 ] sumScores:58.471249, denominator:65.910000, FinalDecision: Can Proceed FinalScore: 0.887138}
predeterminado  10:33:00.662238 -0600   SpringBoard [com.mycompany.myapp] Snapshot data for <XBApplicationSnapshot: 0x1115c11f0; …08712EF1D226> written to file: /private/var/mobile/Containers/Data/Application/1DB50DD3-CF52-4498-854F-C0939D28ECC0/Library/Caches/Snapshots/com.mycompany.myapp/5E831360-7FEE-4255-A6FB-08712EF1D226@2x.ktx
predeterminado  10:33:00.666489 -0600   trustd  cert[0]: MissingIntermediate =(leaf)[force]> 0
predeterminado  10:33:00.687764 -0600   TVRemoteConnectionService   XPC: Recieved an application registered LaunchEvent
predeterminado  10:33:00.909692 -0600   trustd  cert[0]: MissingIntermediate =(leaf)[force]> 0
predeterminado  10:33:00.910738 -0600   trustd  cert[0]: SubjectCommonName =(leaf)[]> 0
predeterminado  10:33:00.910872 -0600   trustd  cert[0]: LeafMarkerOid =(leaf)[]> 0
predeterminado  10:33:00.912183 -0600   trustd  cert[0]: MissingIntermediate =(leaf)[force]> 0
predeterminado  10:33:00.912253 -0600   trustd  cert[0]: AnchorApple =(path)[]> 0
predeterminado  10:33:00.912321 -0600   trustd  cert[0]: ChainLength =(path)[]> 0
predeterminado  10:33:00.912399 -0600   trustd  cert[0]: IssuerCommonName =(path)[]> 0
predeterminado  10:33:00.943350 -0600   trustd  cert[0]: MissingIntermediate =(leaf)[force]> 0
predeterminado  10:33:00.943416 -0600   trustd  cert[0]: NonEmptySubject =(path)[]> 0
predeterminado  10:33:00.972795 -0600   trustd  cert[1]: AnchorTrusted =(leaf)[force]> 0

After days of research and thanks for the help @Little Green Viper, I found a solution.

Basically, some Apple Worldwide Developer Relations Certification Authority weren't working after the update, but it was able to compile successful for the iOS 11. Then, the most risky solution is deleting all the Apple Worldwide Developer Certificates, BUT before doing that, try creating a new user on your Mac.

(System PreferencesUsers and groupsNew User) that should work.

Now you have to options, work in the new user or re-sign the certificates. In my personal case, I picked up the first option.