发表于: 2019-08-28 22:25:54
1 390
今天完成的事情:
评审两个师弟的任务
了解第三方平台与应用之间推送流程
明天计划的事情:
修改任务9
开始任务10
遇到的问题:
资料看的有点懵
收获:
API
前端调用后端数据的一个通道,就是我们俗说的接口,通过这个通道,可以访问到后端的数据,但是又无需调用源代码。
UI:用户界面,人和程序交互;API:程序和程序交互,传递数据,触发功能;
SDK
工程师为辅助开发某类软件的相关文档、范例和工具的集合,使用SDK可以提高开发效率,更简单的接入某个功能。
关系:SDK相当于开发集成工具环境,API就是数据接口。在SDK环境下调用API数据。
推送:
1.远程推送:分为普通推送和静默推送;
普通推送用户会收到推送内容、声音,应用处于后台或者kill点击推送内容进入APP后才会会进入;
静默推送(后台远程推送)是一种特殊的远程推送,没有推送内容声音,不用点击推送内容也不用进入APP就会执行,用户毫无感觉;
允许应用收到通知后在后台(background)状态下运行一段代码,可用于从服务器获取内容更新。
功能使用场景:(多媒体)聊天,Email更新,基于通知的订阅内容同步等功能,提升了终端用户的体验。
使用场景:
应用处于后台会断开即时通讯的长连接:
流程:发消息到后台>后台发消息给用户;
方案1:普通推送
发消息到后台>后台发消息和推送给用户;
缺点:后台多一倍的工作量;
方案2:静默推送
静默推送唤醒App>应用处理>本地推送
2.本地推送:
不需要联网的,APP内部实现推送功能,本地推送的目标是安装了APP的设备,受APP在该设备的通知是否开启影响。最常用的就是闹钟APP
3.离线推送
一条给某个用户的推送,如果该用户当前不在线,则会保存为离线消息,待用户下次上线时继续推送给他。可以通过该值为指定离线消息时长,即在该时长范围内用户上线会继续收到推送,否则过期。默认时长为1天,最长为10天,可设置为0表示不保留离线消息,只有在线用户才能收到。
原理:
客户端注册远程推送发送Token key ,APNs服务器根据Token key 下发给客户端deviceToken; 客户端把DeviceToken发送给自己的服务器,自己的服务器发送推送消息给APNs服务器,APNs服务器将消息发给DeviceToken对应设备上的客户端
deviceToken其实就是根据注册远程通知的时候向APNs服务器发送的token key(Token key 包括设备的UDID和APP的bundle id)
指定用户推送
根据userToken 可以推送指定的用户,同一个APP的同一个推送,有些用户可以收到有些用户不能收到,userToken一般都是根据自己公司自定义的规则去生成的
评论