关闭

iOS远程推送之极光推送

853人阅读 评论(0) 收藏 举报
分类:

极光推送是给iOS客户端推送通知的工具。

只要在客户端嵌入SDK注册下就可以使用,方便快捷。

1.0 注册极光开发者账号:https://www.jpush.cn/common/#signup


填写注册信息


邮箱最好别用QQ邮箱验证是有延迟。

2.0创建应用



填写应用信息


点击创建我的应用完成后。


创建完成列表显示



配置app

1.0 下载极光推送SDKhttps://www.jpush.cn/common/products#product-download

将lib导入工程



添加依赖库。



如有变化具体参照官方文档。

添加一个plist文件名称PushConfig不能变。


plist文件添加键值


将下面的代码复制进app代理里面导入头文件

#import "JPUSHService.h"

#import <AdSupport/AdSupport.h>


- (BOOL)application:(UIApplication *)application
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    
    NSString *advertisingId = [[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString];
    //Required
    if ([[UIDevice currentDevice].systemVersion floatValue] >= 8.0) {
        //可以添加自定义categories
        [JPUSHService registerForRemoteNotificationTypes:(UIUserNotificationTypeBadge |
                                                          UIUserNotificationTypeSound |
                                                          UIUserNotificationTypeAlert)
                                              categories:nil];
    } else {
        //categories 必须为nil
        [JPUSHService registerForRemoteNotificationTypes:(UIRemoteNotificationTypeBadge |
                                                          UIRemoteNotificationTypeSound |
                                                          UIRemoteNotificationTypeAlert)
                                              categories:nil];
    }
    //Required
    // 如需继续使用pushConfig.plist文件声明appKey等配置内容,请依旧使用[JPUSHService setupWithOption:launchOptions]方式初始化。
    [JPUSHService setupWithOption:launchOptions appKey:appKey
                          channel:channel
                 apsForProduction:isProduction
            advertisingIdentifier:advertisingId];
    
    return YES;
}

- (void)application:(UIApplication *)application
didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
    
    /// Required - 注册 DeviceToken
    [JPUSHService registerDeviceToken:deviceToken];
}

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo {
    
    // Required,For systems with less than or equal to iOS6
    [JPUSHService handleRemoteNotification:userInfo];
}

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler {
    
    // IOS 7 Support Required
    [JPUSHService handleRemoteNotification:userInfo];
    completionHandler(UIBackgroundFetchResultNewData);
}

- (void)application:(UIApplication *)application didFailToRegisterForRemoteNotificationsWithError:(NSError *)error {
    //Optional
    NSLog(@"did Fail To Register For Remote Notifications With Error: %@", error);
}
真机运行app。

测试极光推送

点击推送


点击发送通知


填写通知内容


填写后发送,发送成功后显示



手机上显示的内容截图



至此极光推送完成。

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:93084次
    • 积分:1515
    • 等级:
    • 排名:千里之外
    • 原创:57篇
    • 转载:22篇
    • 译文:0篇
    • 评论:9条
    最新评论