极光推送随笔

原创 2014年11月06日 22:27:27
这些都出自极光推送的官方文档上http://docs.jpush.cn/pages/viewpage.action?pageId=3310013

名词:

1. 别名alias:标识应用程序用户,一个用户一个别名,一个别名却可以指定多个用户。
2. 标签tag: 方便把用户分类,一个标签可以有多个用户,一个用户也可以被打上不同的标签。就像选课,一门课可以有多个学生,一个学生也可以上多门课,当某一门课开课的时候,可以给上这门课的学生发送消息。
3.RegistrationID:应用程序在第一次成功注册到 JPush 服务器时,JPush 服务器会给客户端返回一个唯一的该设备的标识 - RegistrationID。JPush SDK 会以广播的形式发送 RegistrationID 到应用程序。反之,应用程序也可以把此 RegistrationID 保存以自己的应用服务器上,然后就可以根据 RegistrationID 来向设备推送消息或者通知。
4. Badge:    badge是iOS用来标记应用程序状态的一个数字,出现在程序图标右上角。

相关重要方法说明:

1. setTagsWithAlias(with Callback)  设置用户的别名和标签,并返回数据告知设置状态
+ (void)setTags:(NSSet *)tags alias:(NSString *)alias callbackSelector:(SEL)cbSelector object:(id)theTarget;
参数说明
  • alias
    • nil 此次调用不设置此值。
    • 空字符串 (@"")表示取消之前的设置。
    • 每次调用设置有效的别名,覆盖之前的设置。
    • 有效的别名组成:字母(区分大小写)、数字、下划线、汉字。
    • 限制:alias 命名长度限制为 40 字节。(判断长度需采用UTF-8编码)
  • tags
    • nil 此次调用不设置此值。
    • 空集合([NSSet set])表示取消之前的设置。
    • 每次调用至少设置一个 tag,覆盖之前的设置,不是新增。
    • 有效的标签组成:字母(区分大小写)、数字、下划线、汉字。
    • 限制:每个 tag 命名长度限制为 40 字节,最多支持设置 100 个 tag,但总长度不得超过1K字节。(判断长度需采用UTF-8编码)
    • 单个设备最多支持设置 100 个 tag。App 全局 tag 数量无限制。
  • callbackSelector
    • nil 此次调用不需要 Callback。
    • 用于回掉返回对应的参数 alias, tags。并返回对应的状态码:0为成功,其他返回码请参考错误码定义。
    • 回调函数请参考SDK 实现。
  • theTarget
    • 参数值为实现了callbackSelector的实例对象。
    • nil 此次调用不需要 Callback。
2. setTags--该方法是 setTagsWithAlias (with Callback) 的简化版本,用于只变更标签的情况。
+ (void)setTags:(NSSet *)tags callbackSelector:(SEL)cbSelector object:(id)theTarget;
3.setAlias--该方法是 setTagsWithAlias (with Callback) 的简化版本,用于只变更别名的情况。
+ (void)setAlias:(NSString *)alias callbackSelector:(SEL)cbSelector object:(id)theTarget;
4. filterValidTags--用于过滤出正确可用的 tags。如果总数量超出最大限制则返回最大数量的靠前的可用tags。
使用建议

设置 tags 时,如果其中一个 tag 无效,则整个设置过程失败。

如果 App 的 tags 会在运行过程中动态设置,并且存在对 JPush SDK tag 规定的无效字符,则有可能一个 tag 无效导致这次调用里所有的 tags 更新失败。

这时你可以调用本方法 filterValidTags 来过滤掉无效的 tags,得到有效的 tags,再调用 JPush SDK 的 set tags / alias 方法。

+ (NSSet*)filterValidTags:(NSSet*)tags;

5. setBadge----设置JPush服务器中存储的badge值
+(BOOL)setBadge:(int)value--value的取值范围:[0,99999]////////设置badge值,本地仍须调用UIApplication:setApplicationIconBadgeNumber函数
6, resetBadge----清空JPush服务器中存储的badge值,即[APService resetBadge];

推送注意问题:

1.提示“You've implemented -[<UIApplicationDelegate> application:didReceiveRemoteNotification:fetchCompletionHandler:], but you still need to add "remote-notification" to the list of your supported UIBackgroundModes in your Info.plist.”

解决:在项目配置的Capabilities菜单的Background Modes菜单中选中“Remote notification”。如果没有看到选项菜单,需要将Background Modes菜单打到ON状态。

2.提示“Not get deviceToken yet. Maybe: your certificate not configured APNs? or current network is not so good so APNs registration failed?  or there is no APNs register code? Please refer to JPush docs.”

原因:我的CodeSigning中的Provision Profile没有选择正确,原因是我在apple的dev中心修改了配置,但没有更新到xcode。更新可以在账户管理中找到,xcode菜单在Xcode->Preferences->account选项卡,在Apple IDs中找到你得账号,点击右下角的view detail按钮,在弹出的窗口中点击左下角的刷新按钮即可刷新最新的Provision Profile。最后在CodeSigning中的Provision Profile中选择最新的值即可。





版权声明:本文为博主原创文章,未经博主允许不得转载。

iOS开发-进阶:JPush设置标签与别名的API

标签与别名 API (iOS) 功能说明 温馨提示,设置标签别名请注意处理call back结果。 只有call back 返回值为 0 才设置成功,才可以向目标推送。否则服务器...
  • sinat_31872425
  • sinat_31872425
  • 2016年03月13日 21:12
  • 6220

博客园首页新随笔联系管理订阅 随笔- 7 文章- 0 评论- 4 ElasticSearch 5.0.1 java API操作

博客园首页新随笔联系管理订阅 随笔- 7  文章- 0  评论- 4  ElasticSearch 5.0.1 java API操作   ...
  • gaoqiao1988
  • gaoqiao1988
  • 2016年12月25日 09:15
  • 618

2016新年随笔

前言 题外话:【我爱王梦】 生活:        高考时的失利,让我在很大的一段时间内都走不出来,那段时间真的不知道自己在想什么?又到底在做着什么?说真的,那段时间我感觉到了真正的孤独,没...
  • wangmeng951011
  • wangmeng951011
  • 2016年02月11日 12:02
  • 466

寒假计划随笔

未来畅想      大三过半,已经到了为未来做打算的时候了。我打算不考研了,我认为本专业的实践能力比较重要,早些着手实践,工作一段时间以后有精力的话就准备考研,提升自己的知识储备。大学三年我的实践能...
  • yangyayan21
  • yangyayan21
  • 2018年01月20日 10:39
  • 37

博客园的 “随笔、文章、日记”有什么区别?

博客园的 “随笔、文章、日记”有什么区别?生成的url有区别“p/articles/diary”,并且日记不公开...
  • yunweifun
  • yunweifun
  • 2017年12月17日 09:25
  • 253

企业战略管理笔记

天津大学 赵国杰教授:企业战略管理 MBA课程 管理是指在一定组织中的管理者,运用一定的职能和手段来协调他人的劳动,使别人同自己一起超高效率地实现组织既定目标的活动过程。 社会科学,人类行为科学-...
  • snicolashe
  • snicolashe
  • 2016年08月30日 01:10
  • 984

博客园的 “随笔、文章、新闻、日记”有啥区别

今天才发现:博客园的随笔,文章,日记的区别 随笔:是一些比较杂乱的技术类东西且有待修改和讨论的文章,假如是原创则只是作者随时提笔写下的内容,而并没有经过太多的推敲,甚至措辞也没有得到很合理的...
  • chongtianfeiyu
  • chongtianfeiyu
  • 2013年09月06日 16:27
  • 3198

【生活随笔】行走

启程少年初长成,振翅欲飞,壮心不已。好吧,背上包去游历!头顶青天,脚踏土地,方方正正,坚定不移!路上行走时自由的,可以选择搏击风浪,也可以选择曲径通幽。行走是未知的,前面也许是鸟语花香,也可能是毒莽怪...
  • liangjingbo
  • liangjingbo
  • 2013年12月11日 21:56
  • 1397

金融随笔

资本市场会买的永远都只是学徒,会卖的才是师傅,欲望的膨胀才是最可怕,花了几年时间始终无法完成自己内心的转化,贪婪才是最可怕的毒药!...
  • zzytmxk
  • zzytmxk
  • 2016年12月02日 22:27
  • 126

随笔_一道二年级数学题引发的联想

计算只能发生在同类的东西之间,比如右上图是均值和均值算,右下是分数和分数算,左边的图到第三层的时候,均值和分数算,不是一种东西就没法放一起算了。...
  • xieyan0811
  • xieyan0811
  • 2017年12月30日 12:31
  • 56
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:极光推送随笔
举报原因:
原因补充:

(最多只允许输入30个字)