Fire debugging iOS14.2

I’m unable to debug on iOS 14.2 devices. It deploys to a device fine, but can’t connect. I’ve tried a new iPad and an iPhone. I have tried using two different macs all with the same result. This is the last bits of the log:

Installation progress: 95% GeneratingApplicationMap
DeviceAppURL=file:///private/var/containers/Bundle/Application/533B0D6F-B1E2-455E-8439-4C4E8A9A1002/Logonn.app/
DeviceAppContainer=/var/containers/Bundle/Application/533B0D6F-B1E2-455E-8439-4C4E8A9A1002
Deployment of app bundle successful.
DeveloperFolder=/Applications/Xcode.app/Contents/Developer
Architecture=arm64e
Running /Applications/Fire.app/Contents/Resources/crossboxhelper --debug 00008020-00042DE20CE8402E 38366
RemObjects Elements CrossBoxHelper 1.42: Starting Debug Server on Device

Waiting for device: 00008020-00042DE20CE8402E
DeveloperFolder=/Applications/Xcode.app/Contents/Developer
DeviceSupportPath=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/14.2
Architecture=arm64e
Developer disk image found in /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/14.2/DeveloperDiskImage.dmg
Setup progress: 30% Looking up DeveloperDiskImage.dmg
Setup progress: 95% Developer disk image mounted successfully
Error: AMDeviceStartService(com.apple.debugserver) | e8000022 (-402653150)
DetailedError: The service is invalid. (kAMDInvalidServiceError)

I wonder if it’s related to the fact that even the app (a DA client) isn’t able to connect to the server either (all works fine on older iOS), so I’m thinking maybe something has changed that I’ve missed in the networking. I also tried creating a new project in Fire (simple iOS template) with the same result.

I’ve been testing on a device rather than simulator as I also seem to have lost my list of simulators on the main mac I use, using Fire (they are there in Xcode) and I’m not sure why, though that will be a separate issue.

Looks like Apple chawed the internal APIs for that with iOS 14.2 :frowning:

(was/is 14.1 fine for you? I must admit I haven’t tested on device debugging in awhile, myself).

I didn’t try 14.1, the iPad came with it, but as Xcode just arrived at the same time for 14.2 I let it update before I tried it.

1 Like

I’m thinking of just dropping crossbxhelper and switching to using https://github.com/ios-control/ios-deploy, so I can stop worrying having to watch up with every time Apple breaks his this works, myself. I’ll see if I (hopefully) can get that integrated fro Friday…

Interesting. I’m around so feel free to shout if you want me to try anything ahead of your release.

Thanx. I should be good, I was able to reproduce the issue…

Got it working with ios-deploy, mostly. only issue is, I don’t seem to be getting symbols. But then, I also don’t see any Symbols subfolders in /Users/mh/Applications/Xcode-12.2-GM.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/14.2 at all, which is also where crossboxhelper would have located them… Downloading 12.3 now to see if that fixes anything (as my phone in on 14.3)…

Do those exists for you?

There’s just these image in every folder.

Solved. hopefully I’ll have a new Fire build for you in a few hours.

Build for 20201117-200556-fire-develop [setups] started on gazorpazorp

this one should be done in about an hour on the firehose.

Tried it (actually was -210359), and it builds, the last thing in the log says:

Running “/Volumes/Fire 10.0.0.2572/Fire.app/Contents/Resources/ios-deploy” --id 00008020-00042DE20CE8402E --bundle /Users/Jeremy/Documents/GitHub/StockSoftware/Mobile/LogOnn/bin/Debug/iOS/Logonn.app

But nothing happened. It didn’t even copy it across (I can tell this as I have the app store version on the iPad which should be replaced by this update). This is all there is on console, when I press run:

Mmm, oddly, I then tried another iPad with iOS 12.4.9 and Fire won’t even let me select it in the device list. As I don’t have any simulators showing on this mac either, the run command it only available if I plug the original iPad (14.2) in.

I’ll go and try it on the other mac, where I do have simulators.

curious,. iff you run crossboxhelper --listdevices, what does it show?

Hmm, no output at all? can you see if /Volumes/Fire 10.0.0.2572/Fire.app/Contents/Resources/ios-deploy is executable, and iff not do chmod +x on it (might need to have to copy fire off the DMG for that). I’ll see why the build doesn’t set that, but my local built-from-script Fire just failed on the same (even though when I tested yesterday wit was fine).

That’s not actually present in the app !

If I run that or --listsimulators then I get nothing other than this:
RemObjects Elements CrossBoxHelper 1.5:

Syntax:

  crossboxhelper --simulator          <app bundle>
  crossboxhelper --simulator-debug    <app bundle>
  crossboxhelper --deploy <device id> <app bundle>
  crossboxhelper --debug  <device id> <port>                           (will not exit)
  crossboxhelper --monitormobiledevices                                (will not exit)
  crossboxhelper --listcerts
  crossboxhelper --listsimulators

Optional arguments for --simulator, --simulator-debug and --debug:

  crossboxhelper --args "arg1;arg2;arg3"
  crossboxhelper --env "var1=x;var2=y"
  crossboxhelper --stdout "/temp/path"

Optional arguments for --simulator and --simulator-debug:

   crossboxhelper --sdk iOS|watchOS|tvOS
   crossboxhelper --sdkversion 9.0|8.4|...
   crossboxhelper --device <name>
   crossboxhelper --32bit
   crossboxhelper --64bit
   crossboxhelper --watch --42mm
   crossboxhelper --watch --38mm
   crossboxhelper --tv

If I run the --listcerts option then I do get a result.

Sorry, meant --monitormobiledevices

WTF. I’ll need to check whats going on…

Can you drop in the attached file? (unzipped ofc)?

ios-deploy.zip (121.2 KB)

With the new iPad:

RemObjects Elements CrossBoxHelper 1.5: Monitoring for Mobile Devices

Device: connected:    ID=00008020-00042DE20CE8402E | Name=iPad | OSVersion=14.2 | OSBuild=18B92 | Device=iPad | Type=iPad11,1 | Model=MUQW2 | Architecture=arm64e | State=Activated | PhoneNo=(null) | Serial=DMPDGPG0LM93 | Paired=YES

With the old one:

RemObjects Elements CrossBoxHelper 1.5: Monitoring for Mobile Devices

Device: disconnected: ID=(null)
Device: connected:    ID=376cec5c3c8f09cbd6e1e8062d027b573fe1538f | Name=Stocktake’s iPad | OSVersion=12.4.9 | OSBuild=16H5 | Device=iPad | Type=iPad4,4 | Model=ME276 | Architecture=arm64 | State=Activated | PhoneNo=(null) | Serial=DLXP55D5FCM5 | Paired=YES

hmm, and the new one doesnt show in the IDE< but the old one does? freaky, they both look the same’ish, aside from then change in ID format (which iirc I just treat as a string…)

Now it does the same as Fire did before, i.e.:

Deployment of app bundle successful.
DeveloperFolder=/Applications/Xcode.app/Contents/Developer
Architecture=arm64e
Running /Applications/Fire.app/Contents/Resources/crossboxhelper --debug 00008020-00042DE20CE8402E 17108
RemObjects Elements CrossBoxHelper 1.42: Starting Debug Server on Device

Waiting for device: 00008020-00042DE20CE8402E 
DeveloperFolder=/Applications/Xcode.app/Contents/Developer
DeviceSupportPath=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/14.2
Architecture=arm64e
Developer disk image found in /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/14.2/DeveloperDiskImage.dmg
Setup progress:  30% Looking up DeveloperDiskImage.dmg
Setup progress:  95% Developer disk image mounted successfully
Error: AMDeviceStartService(com.apple.debugserver) | e8000022 (-402653150)
DetailedError: The service is invalid. (kAMDInvalidServiceError)

On the old iPad, it works.

Hang on, I think I had the wrong Fire…

1 Like