使用 TestFlight 通过 Parse 推送通知

Posted

技术标签:

【中文标题】使用 TestFlight 通过 Parse 推送通知【英文标题】:Push notification through Parse using TestFlight 【发布时间】:2014-11-19 20:03:28 【问题描述】:

我知道有很多这样的问题,但我已经尝试了多种方法,但我似乎仍然无法通过 Parse 和通过测试飞行安装的应用程序获得推送通知。

如果我连接我的手机并通过 Xcode 下载该应用程序,它可以完美运行。但是,如果我将相同的构建上传到 Testflight 并尝试发送推送,则没有任何反应。

有人说有生产证和开发商证。或者它可能是沙盒令牌。但我不确定如何解决这些问题。

我已经将生产和开发 SSL 证书添加到 Parse。

PS。我正在使用开发人员配置文件进行构建,并且我导出了一个 AD HOC 开发人员。

我的应用代理代码是 ..

#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];

如果您需要其他代码,我会提供。 如何获得推送通知以通过试飞工作

【问题讨论】:

我没有什么可以补充的,但我遇到了同样的问题,想知道您是否设法解决了? 【参考方案1】:

我正在回答我自己的问题: 您的供应配置文件必须包含用于生产/分发的推送证书(但仍然必须是开发人员配置文件)。 由于试飞在生产级别上工作,因此仅使用开发人员推送证书(两者都添加)将无法使用。 关于这个的任何其他问题只是问。我遇到了很多麻烦

【讨论】:

我现在遇到了同样的问题,但我不太担心在 TestFlight 中工作的推送。只要它们在直接从 Xcode 下载后在我的测试设备上工作,它们应该在/当发布到 App Store 时工作,对吗? 我相信直接从 xCode 和应用商店下载会有所不同。 iTunes connect 试飞应该能让你更好地了解它在应用商店中的表现 您项目的构建设置“代码签名”和“配置文件”是什么样的?你能显示截图吗?谢谢! 另外,我猜你说的不是Apple Testflight?您是否设法让它与 Apple Testflight 一起工作? 我在新的 Apple 试飞中没有任何使用推送通知的应用程序。如果您愿意,请随时在 *** 上创建一个问题,其中包含有关您的设置方式的图像和代码,我会查看它,看看是否能发现问题。在此处发布链接。 PS。确保模糊图像中包含个人信息的任何部分。(您可以使用预览应用来做到这一点)。

以上是关于使用 TestFlight 通过 Parse 推送通知的主要内容,如果未能解决你的问题,请参考以下文章

推送通知在 TestFlight 中不起作用,但在 Xcode 中起作用

TestFlight 后无法从 Firebase 获得推送通知

无法接收从 Pushwoosh 到 TestFlight 分布式应用程序的推送通知

Testflight beta 未向外部测试人员发送电子邮件或推送通知

android 使用 parse.com api 通过推送通知实现聊天

在发布版本上推送通知工作,但在上传到 TestFlight 之后没有