CN105246054A - 一种适用于android智能手机的消息推送方法 - Google Patents
一种适用于android智能手机的消息推送方法 Download PDFInfo
- Publication number
- CN105246054A CN105246054A CN201510534174.0A CN201510534174A CN105246054A CN 105246054 A CN105246054 A CN 105246054A CN 201510534174 A CN201510534174 A CN 201510534174A CN 105246054 A CN105246054 A CN 105246054A
- Authority
- CN
- China
- Prior art keywords
- token
- client
- server
- push
- device numbering
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/12—Messaging; Mailboxes; Announcements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/55—Push-based network services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/02—Protecting privacy or anonymity, e.g. protecting personally identifiable information [PII]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Telephonic Communication Services (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明属于消息推送领域,提供一种适用于android智能手机的消息推送方法,本推送方法不做轮询,客户端在发起一次请求后立即挂起,一直到服务器端有更新的时候,服务器才会主动推送信息到客户端。在服务器端有更新并推送信息过来之前这个周期内,客户端不会有新的多余的请求发生,服务器端对此客户端只保留基本的连接信息,一旦服务器有更新将推送给客户端,客户端也将相应的做出处理。本发明推送方法更加高效,用户可以十分便捷接收来自app服务器的重要通知信息。
Description
技术领域
本发明属于消息推送领域,特别涉及一种适用于android智能手机的消息推送方法。
背景技术
随着移动互联网的快速发展,智能手机的普及,应用软件也越来越丰富。推送功能在手机开发中应用的场景越来越多。比如新闻客户端推送新的通告,新版本更新通知,彩票客户端中奖通知等等。因此消息推送成为互联网上通过定期传送用户需要的信息来减少信息过载的一项新技术,推送技术通过自动传送信息给用户,来减少用于网络搜索的时间,它根据用户的兴趣来搜索、过滤信息,并将定期推给用户,帮助用户高效率地发掘有价值的信息。
传统的推送方式采用客户端定期向服务器轮询,即以一定时间间隔向服务器发出请求,以频繁请求的方式来保持客户端和服务端的同步。这种同步方案最大问题在于,当客户端以固定频率向服务器发起请求的时候,服务器端的数据可能没有更新,这样会带来很多无谓的网络传输,所以这是一种非常低效的实时方案。
发明内容
本发明就是针对上述背景技术中的不足,而提出的一种适用于android智能手机的消息推送方法,该方法可整合至移动互联网项目使用,手机客户端可以轻松获取来自服务器端的最新通知公告和版本信息,方便实用。用户可以十分便捷接收来自app服务器的重要通知信息。
本发明的目的是通过如下技术措施来实现的。
一种适用于android智能手机的消息推送方法,包括以下步骤:
(1)客户端调用ClientRegist接口,将自身的设备编号传入业务服务器;
(2)业务服务器针对该设备编号进行AES加密,加密后的设备编号即令牌TOKEN,并将设备编号和TOKEN以格式[“TOKEN_设备编号”,TOKEN]同时存储到业务数据库和Redis缓存数据库;
(3)业务服务器将TOKEN返回给客户端;
(4)客户端收到TOKEN后,向推送服务器发起长连接,并将TOKEN和自身的设备编号以请求参数传入,推送服务器组装查询KEY“TOKEN_设备编号”查询Redis缓存数据库,将查出的TOKEN与请求参数中的TOKEN比较,一旦相等则允许建立长连接,此时客户端和服务器保持长连接状态;
(5)业务服务器调用推送服务器推送接口,请求参数包括:消息内容、是否群发、发送时间、指定用户;
(6)推送服务器根据请求参数“是否群发”决定是否群发还是单发,通过长连接向客户端实时的推送消息。
在上述技术方案中,加密算法采用AES,AES是美国国家标准技术研究所NIST旨在取代DES的新一代的加密标准。NIST对AES候选算法的基本要求是:对称分组密码体制;密钥长度支持128,192,256位;明文分组长度128位;算法应易于各种硬件和软件实现。AES设计有三个密钥长度:128,192,256比特,相对而言,AES的128比特密钥比DES的56比特密钥强10~21倍。本发明中AES密钥长度为128位。
在上述技术方案中,设备编号和TOKEN的存储采用Redis数据库,Redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sortedset--有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是Redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。
Redis是一个高性能的key-value数据库。Redis的出现,很大程度补偿了memcached这类key/value存储的不足,在部分场合可以对关系数据库起到很好的补充作用。它提供了Java,C/C++,C#,PHP,JavaScript,Perl,Object-C,Python,Ruby,Erlang等客户端,使用很方便。
本发明与传统的推送方式相比其优点在于:本发明的推送方法是不做轮询的,客户端在发起一次请求后立即挂起,一直到服务器端有更新的时候,服务器才会主动推送信息到客户端。在服务器端有更新并推送信息过来之前这个周期内,客户端不会有新的多余的请求发生,服务器端对此客户端只保留基本的连接信息,一旦服务器有更新将推送给客户端,客户端也将相应的做出处理。
附图说明
图1是本发明实施例适用于android智能手机的消息推送方法的系统架构图。
具体实施方式
下面结合附图及实施例对本发明作进一步的描述。
如图1所求,本发明的系统架构图说明如下:
整体系统架构分客户端、数据接口和业务服务器,客户端通过数据接口与业务服务器进行通信。并通过接口与推送服务器进行通信。
本实施例一种适用于android智能手机的消息推送方法,包括以下步骤:
(1)客户端调用ClientRegist接口,将自身的设备编号传入业务服务器;
(2)业务服务器针对该设备编号进行AES加密,加密后的设备编号即令牌TOKEN,并将设备编号和TOKEN以格式[“TOKEN_设备编号”,TOKEN]同时存储到业务数据库和Redis缓存数据库;
(3)业务服务器将TOKEN返回给客户端;
(4)客户端收到TOKEN后,向推送服务器发起长连接,并将TOKEN和自身的设备编号以请求参数传入,推送服务器组装查询KEY“TOKEN_设备编号”查询Redis缓存数据库,将查出的TOKEN与请求参数中的TOKEN比较,一旦相等则允许建立长连接,此时客户端和服务器保持长连接状态;
(5)业务服务器调用推送服务器推送接口,请求参数包括:消息内容、是否群发、发送时间、指定用户;
(6)推送服务器根据请求参数“是否群发”决定是否群发还是单发,通过长连接向客户端实时的推送消息。
Claims (2)
1.一种适用于android智能手机的消息推送方法,其特征在于该方法包括以下步骤:
(1)客户端调用ClientRegist接口,将自身的设备编号传入业务服务器;
(2)业务服务器针对该设备编号进行加密,加密后的设备编号即令牌TOKEN,并将设备编号和TOKEN以格式[“TOKEN_设备编号”,TOKEN]同时存储到业务数据库和Redis缓存数据库;
(3)业务服务器将TOKEN返回给客户端;
(4)客户端收到TOKEN后,向推送服务器发起长连接,并将TOKEN和自身的设备编号以请求参数传入,推送服务器组装查询KEY“TOKEN_设备编号”查询Redis缓存数据库,将查出的TOKEN与请求参数中的TOKEN比较,一旦相等则允许建立长连接,此时客户端和服务器保持长连接状态;
(5)业务服务器调用推送服务器推送接口,请求参数包括:消息内容、是否群发、发送时间、指定用户;
(6)推送服务器根据请求参数“是否群发”决定是否群发还是单发,通过长连接向客户端实时的推送消息。
2.根据权利要求1所述的适用于android智能手机的消息推送方法,其特征在于:步骤(2)中所述的加密算法采用AES,其中AES密钥长度为128位。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510534174.0A CN105246054A (zh) | 2015-08-27 | 2015-08-27 | 一种适用于android智能手机的消息推送方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510534174.0A CN105246054A (zh) | 2015-08-27 | 2015-08-27 | 一种适用于android智能手机的消息推送方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105246054A true CN105246054A (zh) | 2016-01-13 |
Family
ID=55043482
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510534174.0A Pending CN105246054A (zh) | 2015-08-27 | 2015-08-27 | 一种适用于android智能手机的消息推送方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105246054A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105897696A (zh) * | 2016-03-25 | 2016-08-24 | 努比亚技术有限公司 | 一种终端、服务端和终端接入管理方法 |
CN107741884A (zh) * | 2017-10-09 | 2018-02-27 | 武汉斗鱼网络科技有限公司 | 一种分层状态机实现消息推送的方法和装置 |
CN108418894A (zh) * | 2018-03-26 | 2018-08-17 | 威创软件南京有限公司 | 一种基于push技术的分布式数据同步方法 |
WO2018188383A1 (zh) * | 2017-04-10 | 2018-10-18 | 深圳乐信软件技术有限公司 | 数据处理方法、装置、服务器及存储介质 |
CN108959476A (zh) * | 2018-06-20 | 2018-12-07 | 何中 | 客户端角标、数据实时更新的方法 |
CN109547481A (zh) * | 2018-12-28 | 2019-03-29 | 深圳竹云科技有限公司 | 一种基于Redis有序集合和令牌方式的网站用户会话管理方法 |
CN109730019A (zh) * | 2019-01-17 | 2019-05-10 | 南昌大学 | 一种基于物联网的自定义协议多功能金鱼饲养系统 |
CN110517442A (zh) * | 2019-08-29 | 2019-11-29 | 重庆金泓和瑞科技有限公司 | 一种用于智能安防系统的接警平台工作方法 |
WO2020000144A1 (en) * | 2018-06-25 | 2020-01-02 | Nokia Shanghai Bell Co., Ltd. | Methods and apparatuses for internet content pushing service in a wireless mobile communication system |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120233668A1 (en) * | 2011-03-08 | 2012-09-13 | Rackspace Us, Inc. | Pluggable Allocation in a Cloud Computing System |
CN103336815A (zh) * | 2013-06-27 | 2013-10-02 | 北京京东尚科信息技术有限公司 | 网络广告推送的系统和方法 |
CN104717133A (zh) * | 2015-03-16 | 2015-06-17 | 墨仕(厦门)电子商务有限公司 | 一种分布式消息推送系统及方法 |
CN104754052A (zh) * | 2015-04-01 | 2015-07-01 | 贵州电网公司信息通信分公司 | 一种基于Websocket实现消息推送的方法 |
CN104767775A (zh) * | 2014-01-06 | 2015-07-08 | 腾讯科技(深圳)有限公司 | 网页应用消息推送方法及系统 |
-
2015
- 2015-08-27 CN CN201510534174.0A patent/CN105246054A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120233668A1 (en) * | 2011-03-08 | 2012-09-13 | Rackspace Us, Inc. | Pluggable Allocation in a Cloud Computing System |
CN103336815A (zh) * | 2013-06-27 | 2013-10-02 | 北京京东尚科信息技术有限公司 | 网络广告推送的系统和方法 |
CN104767775A (zh) * | 2014-01-06 | 2015-07-08 | 腾讯科技(深圳)有限公司 | 网页应用消息推送方法及系统 |
CN104717133A (zh) * | 2015-03-16 | 2015-06-17 | 墨仕(厦门)电子商务有限公司 | 一种分布式消息推送系统及方法 |
CN104754052A (zh) * | 2015-04-01 | 2015-07-01 | 贵州电网公司信息通信分公司 | 一种基于Websocket实现消息推送的方法 |
Non-Patent Citations (2)
Title |
---|
任亨,马跃,杨海波,贾正峰: "基于MQTT协议的消息推送服务器", 《计算机系统应用》 * |
吴霖,刘振宇,李佳: "Redis在订阅推送系统中的应用", 《电脑知识与技术》 * |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105897696B (zh) * | 2016-03-25 | 2019-08-23 | 努比亚技术有限公司 | 一种终端、服务端和终端接入管理方法 |
CN105897696A (zh) * | 2016-03-25 | 2016-08-24 | 努比亚技术有限公司 | 一种终端、服务端和终端接入管理方法 |
WO2018188383A1 (zh) * | 2017-04-10 | 2018-10-18 | 深圳乐信软件技术有限公司 | 数据处理方法、装置、服务器及存储介质 |
CN107741884A (zh) * | 2017-10-09 | 2018-02-27 | 武汉斗鱼网络科技有限公司 | 一种分层状态机实现消息推送的方法和装置 |
CN108418894A (zh) * | 2018-03-26 | 2018-08-17 | 威创软件南京有限公司 | 一种基于push技术的分布式数据同步方法 |
CN108418894B (zh) * | 2018-03-26 | 2022-01-11 | 威创软件南京有限公司 | 一种基于push技术的分布式数据同步方法 |
CN108959476A (zh) * | 2018-06-20 | 2018-12-07 | 何中 | 客户端角标、数据实时更新的方法 |
WO2020000144A1 (en) * | 2018-06-25 | 2020-01-02 | Nokia Shanghai Bell Co., Ltd. | Methods and apparatuses for internet content pushing service in a wireless mobile communication system |
US11533380B2 (en) | 2018-06-25 | 2022-12-20 | Nokia Technologies Oy | Methods and apparatuses for internet content pushing service in a wireless mobile communication system |
CN109547481A (zh) * | 2018-12-28 | 2019-03-29 | 深圳竹云科技有限公司 | 一种基于Redis有序集合和令牌方式的网站用户会话管理方法 |
CN109730019A (zh) * | 2019-01-17 | 2019-05-10 | 南昌大学 | 一种基于物联网的自定义协议多功能金鱼饲养系统 |
CN109730019B (zh) * | 2019-01-17 | 2023-10-03 | 南昌大学 | 一种基于物联网的自定义协议多功能金鱼饲养系统 |
CN110517442A (zh) * | 2019-08-29 | 2019-11-29 | 重庆金泓和瑞科技有限公司 | 一种用于智能安防系统的接警平台工作方法 |
CN110517442B (zh) * | 2019-08-29 | 2021-08-10 | 重庆金泓和瑞科技有限公司 | 一种用于智能安防系统的接警平台工作方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105246054A (zh) | 一种适用于android智能手机的消息推送方法 | |
CN102882974B (zh) | 一种通过网站识别版本号节省网站访问资源的方法 | |
CN103731447A (zh) | 一种数据查询方法及系统 | |
EP1940107A1 (en) | A method for processing data synchronization and client terminal, server and data synchronization system thereof | |
KR101389101B1 (ko) | 디바이스 관리 데이터 변경들을 추적하기 위한 방법 및 장치 | |
WO2014108030A1 (zh) | Web轮询方法、装置及系统 | |
US10474185B2 (en) | Timestamp alignment across a plurality of computing devices | |
CN101291342A (zh) | 一种分布式体系中的数据同步方法及系统 | |
CN103312751A (zh) | 一种基于浏览器的即时通信方法 | |
CN104636477B (zh) | 一种信息推送前推送列表的去重方法 | |
WO2020108544A1 (zh) | 同步缓存数据的方法、装置和系统 | |
CN102487375B (zh) | 一种在线下载视频的方法、装置和系统 | |
CN102984267A (zh) | 一种实现分布式缓存节点动态更新到客户端的方法及系统 | |
CN114398372A (zh) | 一种数据缓存方法和装置 | |
CN102647470A (zh) | 在线应用平台内云下载的方法及在线应用平台系统 | |
CN101931633B (zh) | 一种应用于智能手机终端的可增量同步方法 | |
WO2012152076A1 (zh) | 业务适配方法、装置及系统 | |
US20230144072A1 (en) | Data storage server and client devices for securely storing data | |
US10178191B1 (en) | Using multiple cookies | |
CN107786661B (zh) | 信息同步方法 | |
CN204204033U (zh) | 基于无线网络的电子商务系统 | |
CN109766347B (zh) | 一种数据更新方法、装置、系统、计算机设备及存储介质 | |
CN105516383A (zh) | 一种新型dns递归服务器缓存方法和系统 | |
CN106534049B (zh) | 基于服务器的数据下发方法、客户端、服务器及系统 | |
US20210287181A1 (en) | Method and apparatus for processing time records |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160113 |