iOS app upgraded from iOS8 SDK to 9, doesn't receive notifications - swift2

I recently updated an app from iOS8 (swift 1.2) to iOS9, swift 2.2 on Xcode 7.3.
The app works fine, except that notifications are no longer received.
If I use Xcode 6.3 to build my iOS8 branch (master), the app when deployed to my phone receives notifications just fine.
If I use Xcode 7.3 to build my iOS9 branch, the app does not receive notifications.
I've gone over the usual suspects. I'm not getting any errors when registering for notifications, and my code signing and provisioning profiles all seem to be in order.
My registration is standard boilerplate:
UIApplication.sharedApplication().registerForRemoteNotifications()
let userNotificationSettings = UIUserNotificationSettings(forTypes: .Alert, categories: nil)
UIApplication.sharedApplication().registerUserNotificationSettings(userNotificationSettings)
Is there some difference in notification registration on iOS9? I can't seem to find any differences when googling, but I'm open to any pointers.
Thanks,
SO: THE PLOT THICKENS
For sanity checking, I switched back to my master branch, which uses swift 1.2 and iOS8 SDK, and built and redeployed to an older iPhone running iOS8. And, horrifyingly, notifications are not being received anymore
Meanwhile, if I re-install the last TestFlight build I made, using the same codebase, notifications work.
I'm beginning to wonder if there's some issue here from my having Xcode 6.3 and Xcode 7.3 running on the same machine, maybe mucking up some aspect of code-signing? Is that plausible?

Related

Not able to turn on HealthKit capability

I'm trying to experiment with HealthKit on both iOS 9 and WatchOs 2.0, but when I try to turn on HealthKit in the project's Capabilities page, I get the following error message:
Link HealthKit.framework
The framework 'HealthKit.framework' was not found in the SDK for this
target.
The same happens for both the iOS App and the WatchKit App Extension.
I tried to manually find the framework in Xcode-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library, but it's not there either.
I'm using XCode 7.0 Beta 4.
Any tips?
Thanks!
So, I excluded Xcode and re-downloaded it.
HealthKit was suddenly there again.
Go figures..

Unable to submit to AppStore with Xcode 6 GM Seed

Anyone else having issues submitting iOS8 apps to AppStore using Xcode 6 GM Seed released 2014-09-09?
Keep running in to this error:
This bundle is invalid. New apps and app updates submitted to the App
Store must be built with public (GM) versions of Xcode 5.1.1 and iOS 7
SDK. Do not submit apps built with beta software.
My understanding was that the GM SEED is the version which allow you to submit iOS8 enabled app to the App Store?
You are correct that the GM seed is one which can be used to submit updated apps. However, Apple typically send out an email once developers are clear to submit apps built with the GM seed. That hasn't happened yet.
Due to the new phone sizes I expect there will also be updates to iTunes Connect first to support the new screen sizes. I would recommend allowing a day for them to sort all of that. If it is still not available then contact Apple support directly.
Update: Apple have now sent out the email indicating submissions for iOS 8 are now open. Try again now.
I guess maybe you Archived your app in xcode beta and tried to submit it in xcode GM?
I just submitted my iOS 8 app with Xcode GM yesterday and it was totally fine and is now under review.

app using CLLocationManager and built against ios7 will work on ios8?

I understood that in ios8 CLLocationManager should first ask the users for new specific permissions (Location Services not working in iOS 8)
But if an app using CLLocationManager was built against ios7 (and working properly on ios7 and submitted in the store), will this app work on a ios8 device?
thanks
Yes apps built with iOS 7 SDK using Xcode 5 will work with iOS 8. My apps on Appstore works fine with iOS 8 beta 5. My dev builds created by Xcode 5 also work fine with iOS 8 beta (distributed using TestFlight).
I have app that is currently on store that uses CLLocationManager and was built for iOS7. It works fine when installed on iOS8 device. But, i have a problem with new version of the app. I made some new features, didn't touch anything related to CLLocationManager, and when I build that new version with iOS7 SDK locations don't work on iOS8 device, while it still works fine on iOS7 devices.
Is there something special that I have to set up in the environment to make it work?

xcode5 simulator app crashes keychain-access-groups not allowed

my app crashes in the simulator.
Just installed OSX Mavericks with XCode 5.
Developed the app using Corona SDK.
I deleted my old provisioning profiles and created new ones.
my Bundle ID is something like com.company.appname
I get the following error message in the console log from the simulator:
killed testapp[pid xxxx] because its use of the keychain-access-groups entitlement is not allowed (error code -67030)
I already deleted all old project screenshots / files. Don't know what to do.
The compiled app runs fine on my iphone 3gs with iOS 6.1 though.
any help highly appreciated
roman
Corona's engineering team is looking into this. Please add your information to this post on the Corona SDK Forums
http://forums.coronalabs.com/topic/40706-app-crashes-in-xcode-simulator-ios-7-sdk/page-2

Installing TestFlight on iOS 7

After upgrading my iPhone 5 to iOS 7 beta, it seems I have to re-connect it to Testflight.
Unfortunately, I can't install the provisioning profile:
After selecting 'Reconnect Device', 'Install Profile', 'Install Now', the alert is 'Profile Installation Failed. You iPhone is not activated'
I tried to remove the previous profiles, clear Safari cache and reboot, but no success...
Short answer - Go to TestFlight directly on Mobile Safari and use the TestFlight CocoaPod.
We got TestFlight working on the latest iOS 7 build. The TestFlight "app" that installs doesn't work, but manually visiting the TestFlight site in Mobile Safari allows you to install the profile and load the app. Nothing special needed. It sometimes takes a few tries loading the profile to get it to actually load.
Also, loading our apps into TestFlight wasn't working, so we started using the TestFlight CocoaPod and it works great.
I got it working on an iPad mini running iOS 7 beta 5, that was previously used with testflight while running iOS 6. It seems that it will work under some circumstances. What I did:
Unregistered the device from its connected testflight user account (actually this step might be irrelevant)
Launched testflightapp.com from Safari, not from any icon placed on home screen. It has to be from Safari where the url bar is shown. From here I could install betas. However the device itself is not listed under any user and it is not activated. While trying to activate it, testflight app says the registering works OK, however it really fails.
So, it MIGHT work but it's clear that the people at testflight has some work to do.
More: I am unable to get it working with an iPhone 4 iOS 7 beta 5 at all. The iPhone has not previously been used with testflight and seems to require an activation through that profile (at testflight or Apple, not sure) but the activation fails and there's no app list coming up in Safari, just the activation sequence. The key here might be that the device must have been used with testflight before, while on iOS previous to 7.
It seems that using testflight with iOS 7 beta does not work and/or is not supported at the moment.
Not sure what happened here but I was using testflight with an iPad mini that had iOS6. When I just upgraded it to iOS 7, the testflight site loads on the device, however installs never process.
I found the answer of Lysann Schlegel most useful. After some experimenting, I found out that simply opening TestFlight from Safari works fine. Don't use TestFlight app icon.
I had the same problem. In my case after i connect my iphone with the xcode/ organizer beta it let me install again the apps.
Check in Settings if you have the Developer options.
I'm sorry to say that this is currently untested and is a only workaround, but try downloading the ipa file from the TestFlightApp "Share this build" link and use xcode to install it.
This link is normally provided to allow pre iOS4 users to install using testflightapp.com
Even if this works this workaround is probably unacceptable for a vast majority of beta testers.
I'd say also use the "iphone configuration utility" but I suspect that the current release does not support the iOS beta.
If this does fix the issue for people then it's some confirmation that it's mainly the OTA profile that's at issue.
I did a fresh install of iOS 7 beta 6 (it did not have any provisioning profiles before) and was able to load an app from TestFlight. Installing the provisioning profile failed from the web, but I was able to get the correct one onto the device through XCode's Organizer. Then I downloaded the app from TestFlight in Safari (not the little portal TestFlight app). It loaded up just fine.

Resources