Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

iOS 8 Today Extension not working on device

When I run my Today Extension on the simulator everything works fine and it displays the following as expected:

enter image description here

However when I run it on my devices (iPod touch and iPhone 5s) the body won't show (don't mind the title and icon, that was changed)

enter image description here

I attached the debugger to my extension and I got this:

enter image description here

I have no idea what all of this means...

I removed all code for the Today Extension to check if there was a problem with my code and nothing changed so I doubt theres a problem with my code. Any suggestions on how to fix this would be greatly appreciated.

(I do have app groups enabled if thats of any significance)

like image 315
Jarryd Baillie Avatar asked Sep 14 '14 20:09

Jarryd Baillie


4 Answers

I found out that I was accessing my app group with the wrong suitename. Just make sure you access the app group with "group.something.something" not just "something.something"

like image 159
Jarryd Baillie Avatar answered Nov 16 '22 12:11

Jarryd Baillie


Make sure extension target version

Please make sure your extension target version is correct. Xcode'd give you the highest version by default such as 8.3, and if your iOS version is lower than it, Xcode'd give your a crash.

like image 35
Exile3daime Avatar answered Nov 16 '22 14:11

Exile3daime


I found the solution for my case. I just had to specify arm64 as valid architecture for the widget target.

On the Widget Target

Build Settings > Valid Architectures

I was having just armv7 and armv7s. I added arm64 and it worked like charm in my 5s device

like image 4
artud2000 Avatar answered Nov 16 '22 14:11

artud2000


Few points to remember while using app extensions

  • Bundle Identifier for the target extension should be com.companyName.AppName.ExtensionName

  • You need to have separate AppID for the target extension, with identifier specified as com.companyName.AppName.ExtensionName and create provisioning profile with this AppID.

  • Also, the appGroupID created should be embedded in both the AppIDs(for application as well as extension).

like image 1
Jas_meet Avatar answered Nov 16 '22 12:11

Jas_meet