极光推送 设备标识服务还未返回推送标识什么意思

在 SegmentFault,学习技能、解决问题
每个月,我们帮助 1000 万的开发者解决各种各样的技术问题。并助力他们在技术能力、职业生涯、影响力上获得提升。
问题对人有帮助,内容完整,我也想知道答案
问题没有实际价值,缺少关键内容,没有改进余地
用极光推送,如果不通过点击推送的通知进入app,而是通过点击app图标进入app, 那么怎么获取它已经推送过的消息?
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
已经找到答案,这个在移动端,我们要添加 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(networkDidReceiveMessage:) name:kJPFNetworkDidReceiveMessageNotification object:nil];
然后实现方法- (void)networkDidReceiveMessage:(NSNotification *)notification;
然后在服务器端需要在极光推送提供的sdk中填写发给app的消息,并不是给apns的
进而就可以在 networkDidReceiveMessage方法中通过notification.userInfo获取到
分享到微博?
关闭理由:
删除理由:
忽略理由:
推广(招聘、广告、SEO 等)方面的内容
与已有问题重复(请编辑该提问指向已有相同问题)
答非所问,不符合答题要求
宜作评论而非答案
带有人身攻击、辱骂、仇恨等违反条款的内容
无法获得确切结果的问题
非开发直接相关的问题
非技术提问的讨论型问题
其他原因(请补充说明)
我要该,理由是:
在 SegmentFault,学习技能、解决问题
每个月,我们帮助 1000 万的开发者解决各种各样的技术问题。并助力他们在技术能力、职业生涯、影响力上获得提升。极光推送产品简介概览
稿源:传媒
极光推送是经过考验的大规模app推送平台,经过近 6 年的技术积累,极光推送目前每天推送消息数超过20亿条。 开发者集成SDK后,可以通过调用API推送消息。同时,极光推送提供可视化的web端控制台发送通知,统计分析推送效果。 极光推送全面支持 Android, iOS, Winphone 三大手机平台。在消息形式上,极光推送提供四种消息形式:通知,自定义消息,富媒体和本地通知。l&通知:通知是指在手机的通知栏(状态栏)上会显示的一条通知信息。通知主要用于提示用户的目的,应用于新闻内容、促销活动、产品信息、版本更新提醒、订单状态提醒等多种场景2&自定义消息:自定义消息不是通知,所以不会被SDK展示到通知栏上。其内容完全由开发者自己定义。自定义消息主要用于应用的内部业务逻辑。一条自定义消息推送过来,有可能没有任何界面显示3&富媒体:极光推送支持开发者发送图文并茂的通知,从而更好的传达信息,带来更丰富的用户互动。极光推送提供了 5 种模板,开发者可以通过填充模板的内容,发送landing
page、弹窗、信息流形式的富媒体通知。开发者还可以直接通过URL发送预先编辑好的页面。富媒体当前支持Android平台,为更好的使用富媒体的功能,建议更新当前SDK版本至v2.1. 8 及以上。暂时只能通过极光推送的控制台发送,不支持API形式4&本地通知:本地通知API不依赖于网络,无网条件下依旧可以触发;本地通知的定时时间是自发送时算起的,不受中间关机等操作的影响。本地通知与网络推送的通知是相互独立的,不受保留最近通知条数上限的限制。本地通知适用于在特定时间发出的通知,如一些Todo和闹钟类的应用,在每周、每月固定时间提醒用户回到应用查看任务在推送目标上,极光推送通过使用标签、别名、Registration ID 和用户分群,开发者可以向特定的一个或多个用户推送消息。l&标签:为安装了应用程序的用户打上标签,其目的主要是方便开发者根据标签,来批量下发 Push 消息。可为每个用户打多个标签。举例: game, old_page, women2&别名:每个用户只能指定一个别名。同一个应用程序内,对不同的用户,建议取不同的别名。这样,尽可能根据别名来唯一确定用户。3&Registration
ID:客户端初始化极光推送成功后,极光推送服务端会分配一个 Registration ID,作为此设备的标识(同一个手机不同 APP 的
Registration ID 是不同的)。开发者可以通过指定具体的 Registration ID 来进行对单一设备的推送。4&用户分群:用户分群的筛选条件有:标签、地理位置、系统版本、注册时间、活跃用户和在线用户。比如,开发者可以设置这样的用户分群:位于北京、上海、广州和深圳,并且最近 7 天在线的用户。开发者可以通过在控制台设置好用户分群之后,在控制台推送时指定该分群的名称或使用API调用该分群的id发送。此外,极光推送还提供统计分析功能。支持推送数量、用户打开次数、用户使用时长、新增用户、活跃用户等数据的统计。Android开发者需要实现了相关的统计API,才可以进行用户相关的统计。极光推送&iOS的开发者不需要实现统计API,可以直接在【控制台】-【统计】页面查看相关数据。
有好的文章希望站长之家帮助分享推广,猛戳这里
本网页浏览已超过3分钟,点击关闭或灰色背景,即可回到网页在用极光推送的时候,如何让服务器自动做推送,而不是手动在平台,去发送消息。。
你将的推送,,,都是自己手动去发信息,,老师能将一下,如何让服务器自动做推送。。。
写下你的评论...
Copyright (C) 2018 imooc.com All Rights Reserved | 京ICP备 号-2极光推送的设备唯一性标识
作者:佚名
分类 : 新闻中心
  对于 App平台系统,如何唯一地识别移动设备是非常重要的。否则每次用户在设备上卸载掉应用再重新安装,后端系统只能把这个用户当作一个全新的用户了。使用极光推送的开发者常常有这样一个问题:极光推送是如何来做设备的唯一性识别的。
   设备本身的任何标识都是无法直接用作设备唯一标识的。iOS 是系统强力限制被唯一识别的,目前唯一可以部分满足条件是 IDFA,但需要你的 App 本身的确嵌入了广告。本文将解析极光推送如何尽可能地来唯一识别设备。
  极光推送对安装在设备上的 App 使用 RegistrationID 作为标识。极光推送要『尽可能』确保设备的唯一性,就是要使得 RegistrationID 尽可能唯一。
  RegistrationID 的定义
  关于 RegistrationID 极光官方文档有如下的定义:
  集成了 JPush SDK 的应用程序在第一次 App 启动后,成功注册到 JPush时,JPush 服务器会给客户端返回唯一的该设备的标识 – RegistrationID。JPush SDK 会以广播的形式发送 RegistrationID 到应用程序。
  有了这个标识,App 编程可以把这个 RegistrationID 保存到自己的器上,然后就可以根据 RegistrationID 来向设备推送消息或者通知。
  RegistrationID 变化可能性
  如果 App 不卸载,是直接覆盖安装,Android, iOS 上 RegistrationID 的值都不会变化。
  如果 App 是卸载之后再次安装:
  ·&Android 上&RegistrationID 基本不会变;
  ·&iOS 上如果启用了&IDFA 变化可能性不大,如果未启用&IDFA 则每次安装&RegistrationID 都会变;
  RegistrationID 生成规则解析
  Android 平台
  Android 上因为国内存在大量山寨设备的原因,正常的 IMEI,, AndroidID 这些可以考虑用作唯一标识的值,都是不可以用的,因为这些值在一批设备中可能都是同一个值。
  极光的基本思路是:
  1.&生成一个&DeviceID 保存到&Settings, External Storage。依赖本地,应用被卸载后重新安装这些存储里的&DeviceID 还在的话,就是同一个设备。这理论上解决&90% 的不变性问题。
  2.&DeviceID 之外增加补充规则:综合根据&IMEI, MAC Address, AndroidID 这几个值来判断,是否可能是老设备。
  具体的逻辑细节,也是根据实际运行情况,以及收集到的反馈不断调整的,大多数逻辑可在服务器端调整。
  iOS平台
  鉴于 iOS 系统设计上限制设备唯一标识,所以极光一直使用 Device Token 作为标识,也因为极光推送本身就是需要 Device Token 这个值才可能运作的。
  iOS 9 版本之后,每次卸载后重装都会导致 Device Token 变化,所以对于极光后台来说,都只能被识别为新用户。
  极光 SDK 新版本增加了 IDFA 选项,在集成初始化 SDK 时可选把 IDFA 这个值设置进来,这样极光后台就优先根据 IDFA 值来识别用户,从有一定的可能性应用被卸载后重装还能识别回老设备。
  IDFA 是广告标识符,是 iOS 专门为广告跟踪唯一地识别用户而设计的。在 iOS 设备上,设备 -& 隐私 -& 广告这个页面,有一个设置项:限制广告跟踪。默认是未选中状态的,即是关闭状态,是不限制的。用户可以选中,从而限制广告跟踪。设置项之外还有一个按钮:还原广告标识符…。如果用户点击了这个按钮,则 IDFA 值会变化。
  默认的情况下,没有限制广告跟踪,可以取到 IDFA 这个值。并且用户未点击『还原广告标识』时,这个值是不会变的。这样就达到了唯一地标识设备、跟踪到用户的目标。
  但是,但是,请一定留意,IDFA 并不是一定可以启用的,是需要你的 App 的确有广告功能才可以用的,否则 Apple 在上架审核时有可能发现从而拒绝上架。
  关于 App 上架对 IDFA 的要求,可参考这里的说明:The Advertising Identifier (IDFA)
  高级使用建议
  因为 RegistrationID 是 JPush SDK 注册完成之后才得到的,所以调用 SDK API 来获取 RegistrationID 的值时需要稍注意,不是总能够立即得到。
  比如 iOS 上建议在监听到 kJPFNetworkDidLoginNotification 这个通知后的代码里,来获取 RegistrationID 的值。
[ 责任编辑:泽印 ]
比特网 10:51:14
互联网+升级到智能+,开启万物智联新时代
中国互联网消费市场,发展潜力一片大好
软件信息化周刊
比特软件信息化周刊提供以数据库、操作系统和管理软件为重点的全面软件信息化产业热点、应用方案推荐、实用技巧分享等。以最新的软件资讯,最新的软件技巧,最新的软件与服务业内动态来为IT用户找到软捷径。
商务办公周刊
比特商务周刊是一个及行业资讯、深度分析、企业导购等为一体的综合性周刊。其中,与中国计量科学研究院合力打造的比特实验室可以为商业用户提供最权威的采购指南。是企业用户不可缺少的智选周刊!
比特网络周刊向企业网管员以及网络技术和产品使用者提供关于网络产业动态、技术热点、组网、建网、网络管理、网络运维等最新技术和实用技巧,帮助网管答疑解惑,成为网管好帮手。
服务器周刊
比特服务器周刊作为比特网的重点频道之一,主要关注x86服务器,RISC架构服务器以及高性能计算机行业的产品及发展动态。通过最独到的编辑观点和业界动态分析,让您第一时间了解服务器行业的趋势。
比特存储周刊长期以来,为读者提供企业存储领域高质量的原创内容,及时、全面的资讯、技术、方案以及案例文章,力求成为业界领先的存储媒体。比特存储周刊始终致力于用户的企业信息化建设、存储业务、数据保护与容灾构建以及数据管理部署等方面服务。
比特安全周刊通过专业的信息安全内容建设,为企业级用户打造最具商业价值的信息沟通平台,并为安全厂商提供多层面、多维度的媒体宣传手段。与其他同类网站信息安全内容相比,比特安全周刊运作模式更加独立,对信息安全界的动态新闻更新更快。
新闻中心热点推荐
新闻中心以独特视角精选一周内最具影响力的行业重大事件或圈内精彩故事,为企业级用户打造重点突出,可读性强,商业价值高的信息共享平台;同时为互联网、IT业界及通信厂商提供一条精准快捷,渗透力强,覆盖面广的媒体传播途径。
云计算周刊
比特云计算周刊关注云计算产业热点技术应用与趋势发展,全方位报道云计算领域最新动态。为用户与企业架设起沟通交流平台。包括IaaS、PaaS、SaaS各种不同的服务类型以及相关的安全与管理内容介绍。
CIO俱乐部周刊
比特CIO俱乐部周刊以大量高端CIO沙龙或专题研讨会以及对明星CIO的深入采访为依托,汇聚中国500强CIO的集体智慧。旨为中国杰出的CIO提供一个良好的互融互通 、促进交流的平台,并持续提供丰富的资讯和服务,探讨信息化建设,推动中国信息化发展引领CIO未来职业发展。
IT专家新闻邮件长期以来,以定向、分众、整合的商业模式,为企业IT专业人士以及IT系统采购决策者提供高质量的原创内容,包括IT新闻、评论、专家答疑、技巧和白皮书。此外,IT专家网还为读者提供包括咨询、社区、论坛、线下会议、读者沙龙等多种服务。
X周刊是一份IT人的技术娱乐周刊,给用户实时传递I最新T资讯、IT段子、技术技巧、畅销书籍,同时用户还能参与我们推荐的互动游戏,给广大的IT技术人士忙碌工作之余带来轻松休闲一刻。阶段一:provider把要发送的消息、目的标识打包,发送给APNS
阶段二:APNS在自身的已注册Push服务的iOS设备列表中,查找响应标识的iOS设备,并将消息发送到iOS设备。
阶段三:iOS设备把发送的消息传递给相应的应用程序,并且按照设定弹出push通知。
a.首先是应用程序注册消息推送.
b.iOS跟APNS要devicetoken。应用程序接受devicetoken.
c.应用程序将devicetoken发送给JPush服务端程序.
d.server调用极光SDK将推送消息及相关信息发送给JPush.
e.Jpush服务端程序向APNS发送消息.
f.APNS服务将消息发送给iphone应用程序。
申请极光帐号,创建应用。创建后自动生成AppKey用以标识该应用,需要把它配置到项目中。
上传配推送证书.P12。开发环境显示已验证,表示上传成功。 证书ID必须与项目中的Bundle identifier一致。
导入API开发包到应用程序项目.
将SDK包解压,将解压后的lib文件夹添加到项目中。
必要的框架
CFNetwork.Framework
CoreTelephony.framework
SystemConfiguration.framework
Foundation.frmework
UIKit.framework
Security.framework
Xcode7需要的是libz.tbd;Xcode7以下版本是libz.Dylib
在项目中创建Push.Plist文件。
CHANNEL&& 指名应用程序的下载渠道。
APP_KEY 填写管理portal上创建应用后自动生成的APPkey值。确保双方一致。
5.在项目中点击点击info,找到Application requires iPhone environment 选择yes
APS_FOR_PRODUCTION
0表示采用的是开发者证书,1表示采用生产证书发布应用
客户端设置
开启Remote notifications& 需要在xcode中修改应用的capabilities开启Remote notifications。
当注册了Backgroud Modes -& Remote notifications 后,notification 处理函数一律切换到下面函数,后台推送代码也在此函数中调用。
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler;
+ (void)registerDeviceToken:(NSData *)deviceT
&@abstract 处理收到的 APNs 消息
+ (void)handleRemoteNotification:(NSDictionary *)remoteI
- (void)application:(UIApplication *)application
&&& didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken ;
当你的iPhone收到推送信息后到底会发生什么呢?总共有三种可能性:
app在前台运行. 接收到推送信息时屏幕上不会有任何显示,也不会有提示音,但你的app delegate会收到这个推送信息。你可以在这里加入代码来处理接收到的信息。
app不在前台运行。iPhone可能停留在主界面或者另一个app正在运行.一个提示窗口会弹出,可能伴随着提示音。用户可以点击Close按钮来关闭这个窗口或者点击View按钮来打开你的app。如果用户点击的时Close按钮,那你的app不会处理这个推送的信息。
iPhone在锁屏状态下. 同样一个提示窗口弹出,并伴随着提示音,但是这个窗口不会有Close和View按钮。屏幕解锁后会自动进入你的app。
阅读(...) 评论()

我要回帖

更多关于 极光推送返回值 的文章

 

随机推荐