javafxgluon-mobilegluonfx

Untangling the iOS deploy using ./mvnw -Pios gluonfx:link and nativerun


Trying to resolve this error deploying a small sample app generated from start.gluon.io to an attached iPad running iOS 15.2 from macOS 10.15.7

[Mon Dec 27 20:17:53 GMT 2021][INFO] [SUB] [ 52%] CreatingStagingDirectory
[Mon Dec 27 20:17:53 GMT 2021][INFO] [SUB] [ 57%] ExtractingPackage
[Mon Dec 27 20:17:53 GMT 2021][INFO] [SUB] [ 60%] InspectingPackage
[Mon Dec 27 20:17:53 GMT 2021][INFO] [SUB] [ 60%] TakingInstallLock
[Mon Dec 27 20:17:53 GMT 2021][INFO] [SUB] [ 65%] PreflightingApplication
[Mon Dec 27 20:17:53 GMT 2021][INFO] [SUB] [ 65%] InstallingEmbeddedProfile
[Mon Dec 27 20:17:53 GMT 2021][INFO] [SUB] [ 70%] VerifyingApplication
[Mon Dec 27 20:17:53 GMT 2021][INFO] [SUB] 2021-12-27 20:17:53.522 ios-deploy[4411:85868] [ !! ] Error 0xe8008029: unknown. AMDeviceSecureInstallApplication(0, device, url, options, install_callback, 0)

The dummy Xcode app was signed and deployed to the attached iPad ok although had to specify an additional --generate-entitlement-der to the signing config for Xcode 12.

Am following the instructions at https://docs.gluonhq.com/#_build_your_application118. Plist edited for the bundle id, using my apple developer account provisioning profile and hit the above error. Docs say to add <verbose>true</verbose> in the GluonFX plugin can be of help, so I've added to the <configuration> of the plugin artefact and rerun ./mvnw gluonfx:link and nativerun and neither seems to log any additional messages.

Any ideas where to go from here please, either to make the build more verbose to check it's picking up the correct provisioning profile or other clues how to pass the verification once the .app is copied to the iPad please?


Solution

  • Issue is related to running Xcode 12.4 and attempting to deploy to an iOS 15 device. Later versions of Xcode available on newer macOS versions may not encounter this. Apple have added some cert requirements as per The code signature version is no longer supported.

    Was able to sign and deploy by following the advice of José Pereda in the comments, ie cloning the Gluon substrate repo and adding the --generate-entitlement-der to the codesign call.