0

I'm trying to distribute a simple today widget with an ad-hoc profile.

The widget works flawlessly when invoked from XCode in debug mode, but appears empty when the ad-hoc app is installed on the device.

I've asserted that

  • the provisioning profile is correct
  • the app (which has almost no code) launches and displays the trust request
  • preferredContentSize has been set
  • the widget appears in the widget list (edit mode)
  • the widget appears in the notification center, with its title, but with zero height.

    Any clues? Thanks.

UPDATE:

the widget is actually executed (loadView, viewDidAppear, ...) but crashes. Given that its almost empty, and it works in debug mode, it's pretty strange. The crashreport has no useful info.

UPDATE 2:

Adding an MKMapView to the controller's view makes it crash. Pretty strange.

dwery
  • 1,128
  • 10
  • 20
  • Your debug and deployment build settings will be different. try matching them (I would change debug builds to match the deployment ones). Use version control to revert if it doesn't fix it. – Abhi Beckert Nov 11 '14 at 00:30

2 Answers2

1

It seems the widget crashes due to memory pressure. MKMapView is known to be memory hungry.

dwery
  • 1,128
  • 10
  • 20
0

Few things you can check:

  1. Is your bundle identifier different on the ad hoc profile? If so, you'll need to create a new info.plist for both Extension and App so they match.
  2. Are you using any dependencies that don't support 64bit (Arm64)? I've seen an issue where the extension binary wasn't created correctly with older frameworks that don't support 64bit. It worked fine on armv7 devices but didn't show up on arm64 as you describe.
  3. Are you using a app group container? The names must match on the ad hoc profile.

That's all I can think of at the moment. I had a similar issue running iOS 8 beta where I would have to restart the device every now and then to resolve the symptom you describe, but not with the release version as of yet. Hope this helps.

Henry T Kirk
  • 961
  • 9
  • 13
  • the bundle id on the profile is foo.bar.* , app id is foo.bar.myapp and widget id is foo.bar.myapp.mywidget . I'll check the device log for related errors. 2 and 3 should be ok. thanks for your time! – dwery Nov 10 '14 at 16:53