I know there are many question like this out there but I have tried multiple things and I still can't seem to get Push notifications to work through Parse with Apps installed through Test flight.
If I Connect my phone and download the app through Xcode, It works perfect. But if I upload the same build to Testflight and try to send a push, Nothing happens.
Some people have said that theres production certificate and developer certificate. Or it could be sandbox tokens. But I'm not sure how to fix these issues.
I already added production and development SSL Certificates to Parse.
PS. Im Building with a developer Provisioning Profile and I Export a AD HOC Developer.
My App Delegate Code is ..
#import "AppDelegate.h"
#import <Parse/Parse.h>
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
[Parse setApplicationId:@"----I have mine in----"
clientKey:@"----I have mine in----"];
//-- Set Notification
if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 8.0)
{
[[UIApplication sharedApplication] registerUserNotificationSettings:[UIUserNotificationSettings settingsForTypes:(UIUserNotificationTypeSound | UIUserNotificationTypeAlert | UIUserNotificationTypeBadge) categories:nil]];
[[UIApplication sharedApplication] registerForRemoteNotifications];
}
else
{
[[UIApplication sharedApplication] registerForRemoteNotificationTypes:
(UIUserNotificationTypeBadge | UIUserNotificationTypeSound | UIUserNotificationTypeAlert)];
}
//--- your custom code
return YES;
}
- (void)application:(UIApplication *)application
didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken
{
// Store the deviceToken in the current installation and save it to Parse.
PFInstallation *currentInstallation = [PFInstallation currentInstallation];
[currentInstallation setDeviceTokenFromData:deviceToken];
[currentInstallation saveInBackground];
}
- (void)application:(UIApplication *)application
didReceiveRemoteNotification:(NSDictionary *)userInfo {
[PFPush handlePush:userInfo];
}
If you need other code I will provide. How do I get Push Notifications to Work through Test Flight
I'm answering my own question: Your provisioning profile must contain a push certificate for production/ distribution (still has to be a developer profile though) . Since test flight works on a production level it won't work with just a developer push certificate (add both). Any other question on this just ask. I've gone through a lot of trouble shooting
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With