CN103595766A - 实现扩展应用程序的推送通知的方法及装置 - Google Patents
实现扩展应用程序的推送通知的方法及装置 Download PDFInfo
- Publication number
- CN103595766A CN103595766A CN201310505295.3A CN201310505295A CN103595766A CN 103595766 A CN103595766 A CN 103595766A CN 201310505295 A CN201310505295 A CN 201310505295A CN 103595766 A CN103595766 A CN 103595766A
- Authority
- CN
- China
- Prior art keywords
- sending out
- out notice
- extension application
- application program
- application
- 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.)
- Granted
Links
Images
Classifications
-
- 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
- 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/75—Indicating network or usage conditions on the user display
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明公开了一种实现扩展应用程序的推送通知的方法及装置。其中扩展应用程序是指需要在已利用系统权限克服操作系统施加的程序安装限制的环境下安装的应用程序,该方法包括:拦截操作系统上注册了推送通知的应用程序的标识列表,将扩展应用程序的标识添加到标识列表中;设置关于扩展应用程序的推送通知参数;获取操作系统的应用程序推送状态接口,读取扩展应用程序的标识及推送通知参数;根据读取的扩展应用程序的标识及推送通知参数,在终端上显示关于扩展应用程序的推送通知。本发明将扩展应用程序添加到具有push功能的应用程序标识列表中,并设置了有关扩展应用程序的push参数,在越狱后的扩展应用程序上实现了推送通知功能。
Description
技术领域
本发明涉及网络技术领域,具体涉及一种实现扩展应用程序的推送通知的方法及装置。
背景技术
推送通知(Push Notification),也称为远程通知,是在操作系统中引入的功能,是当应用程序(Application,App)没有启动或不在前台运行时,告知用户有新消息的一种途径。
为了方便,本文以苹果公司的iOS操作系统为例进行说明。
一般而言,当要显示消息或下载数据时,通知是由远程服务器(程序的提供者,Provider)发送,然后通过苹果的推送通知服务(Apple PushNotification Service,APNS)推送到终端的程序上。在实现推送通知过程中,必须通过iOS Developer Program Portal(开发者帐户入口)获得SSL(Securesocket layer)证书。每个证书仅限用于一个程序,使用程序的bundle ID(应用程序的标识符)作为标识。
参见图1,为现有技术中推送通知实现示意图。图1中,远程服务器(Provider)是作为某个应用程序的提供者,APNS是苹果推送服务器(ApplePush Server)。推送通知的实现过程主要包括三个阶段。第一阶段,Provider把要发送的消息及目的终端(例如:iphone)的标识打包,发送给APNS。第二阶段,APNS在自身已注册推送服务的iphone列表中,查找有相应标识的iphone,并把消息发送到该iphone。第三阶段,iphone把发来的消息传递给相应的应用程序,并且按照设定弹出推送通知。
在实现推送通知的过程中,无论是Provider和APNS之间还是APNS和终端之间,都需要通过证书进行连接。
众所周知,iOS系统为闭源系统,非开源。用户权限很低,通过“越狱”来打开系统封闭的大门,解除iOS系统的限制,可以随意的修改系统文件,安装插件,以及安装一些App Store(应用程序商店)中没有的扩展应用程序。例如安装App Store以外的软件,更换外观主题,运行shell程序,甚至可以解开运营商对于终端网络的限制(即俗称的“解锁”)。
然而,现有iOS系统推送通知的实现方式不能应用在越狱的扩展应用程序上。这是因为,如前所述的,推送通知过程中的消息必须经过苹果服务器的确认及处理,并且,应用程序的提供者Provider与苹果服务器之间必须基于证书进行连接。对于越狱的扩展应用程序,其对于苹果服务器是非法的,其Provider与苹果服务器之间由于没有合法证书而无法连接。因此,如何在越狱的扩展应用程序上实现推送通知功能,是待解决的一个技术课题。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的实现扩展应用程序的推送通知的方法及装置。
依据本发明的一个方面,提供了一种实现扩展应用程序的推送通知的方法,所述扩展应用程序是指需要在已利用系统权限克服操作系统施加的程序安装限制的环境下安装的应用程序,该方法包括:拦截操作系统上注册了推送通知的应用程序的标识列表,将扩展应用程序的标识添加到标识列表中;设置关于扩展应用程序的推送通知参数;获取操作系统的应用程序推送状态接口,在需要显示推送通知时,利用应用程序推送状态接口,读取标识列表得到扩展应用程序的标识,并读取扩展应用程序的推送通知参数;根据读取的扩展应用程序的标识及推送通知参数,在终端上显示关于扩展应用程序的推送通知。
可选的,采用hook机制拦截操作系统上注册推送通知的应用程序的标识列表,得到关于扩展应用程序的推送通知参数,以及,获取操作系统的应用程序推送状态接口。
可选的,所述设置关于扩展应用程序的推送通知参数包括:设置关于扩展应用程序的推送通知的类型信息;设置关于所述扩展应用程序的推送通知的内容数据。
可选的,所述类型信息包括声音,震动,和/或,标记。
可选的,所述方法还包括:接收用户输入的有关所述扩展应用程序的推送通知的状态数据;保存所述状态数据;在终端重启后根据最新状态数据显示推送通知。
可选的,在以下条件时,确定所述需要显示推送通知:所述扩展应用程序退到后台时,延时函数达到预设时间点;或,在操作系统后台,轮询系统服务器状态符合推送条件时;或,在操作系统后台,创建套接字socket通信,当接收到的消息根据预置规则需要给予用户提醒时。
根据本发明另一方面,还提供一种实现扩展应用程序的推送通知的装置,所述扩展应用程序是指需要在已利用系统权限克服操作系统施加的程序安装限制的环境下安装的应用程序,该装置包括:列表修改单元,用于拦截操作系统上注册了推送通知的应用程序的标识列表,将所述扩展应用程序的标识添加到所述标识列表中;参数设置单元,用于设置关于所述扩展应用程序的推送通知参数;接口读取单元,用于获取操作系统的应用程序推送状态接口,利用所述应用程序推送状态接口,读取所述列表修改单元得到所述扩展应用程序的标识,并读取所述参数设置单元得到所述扩展应用程序的推送通知参数;推送显示单元,用于根据所述接口读取单元读取的所述扩展应用程序的标识及推送通知参数,在终端上显示关于所述扩展应用程序的推送通知。
可选的,所述列表修改单元采用hook机制拦截操作系统上注册推送通知的应用程序的标识列表;所述参数设置单元采用hook机制得到推送通知参数;所述接口读取单元通过hook机制得到应用程序推送状态接口。
可选的,所述参数设置单元设置关于所述扩展应用程序的推送通知的类型信息及内容数据。
可选的,所述参数设置单元设置的类型信息包括声音,震动,和/或,标记。
可选的,所述参数设置单元还用于接收并保存用户输入的有关所述扩展应用程序的推送通知的状态数据;所述推送显示单元在终端重启后根据接口读取单元最新状态数据显示推送通知。
可选的,在以下条件下启动所述接口读取单元读取所述扩展应用程序的标识和推送通知参数以及启动所述推送显示单元显示所述推送通知:所述扩展应用程序退到后台时,延时函数到达预设时间点;或,在操作系统后台,轮询系统服务器状态符合推送条件时;或,在操作系统后台,创建套接字socket通信,当接收到的消息根据预置规则需要给予用户提醒时。
可见,由于本发明实施例通过拦截并修改有关push功能的应用程序标识列表及关于push的数据,将扩展应用程序添加到具有push功能的应用程序标识列表中,并设置了有关扩展应用程序的push参数。简言之,本发明实施例通过hook机制,在越狱后的扩展应用程序上实现了推送通知功能。
对于终端及用户而言,通过上述修改和设置,扩展应用程序和从App Store下载的应用程序一样,都可以展现推送通知功能,并且也可向用户提供修改push参数的界面。对于用户而言,通过本发明实施例实现的扩展应用程序上的推送通知与别的应用程序的推送通知效果一致。
此外,由于本发明是基于系统原有推送功能的实现方式,也就是没有额外增加系统负担,因此不会干扰系统的正常运行。而且,由于本发明仅通过在终端对有关push的数据结构进行拦截和修改即可实现,可不涉及网络侧的改动,因此实现简单。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了现有技术消息推送实现示意图;
图2示出了根据本发明一个实施例的实现扩展应用程序的推送通知的方法流程图;以及
图3示出了根据本发明一个实施例的实现扩展应用程序的推送通知的装置示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
如前所述的,在现有推送通知实现过程中,消息必须经过苹果服务器的确认及处理,并且,应用程序的提供者Provider与苹果服务器之间必须基于证书进行连接。对于越狱的应用程序,其对于苹果服务器是非法的,其Provider与苹果服务器之间由于没有合法证书而无法连接。
因此,本发明提供一种实现扩展应用程序的推送通知的方法,通过与获取系统服务器与应用程序服务器之间证书不同的思路,即仅在终端本地对有关push的数据结构进行拦截和修改,即可在扩展应用程序(也可称为越狱应用程序、越狱软件或越狱插件)上实现推送通知功能。本发明中,扩展应用程序是指,需要在已利用系统权限克服操作系统施加的程序安装限制的环境下安装的应用程序。
请参见图2,为根据本发明一个实施例的实现扩展应用程序的推送通知的方法流程图。
该方法实施例包括以下步骤:
S201:拦截操作系统上注册了推送通知的应用程序的标识列表,将扩展应用程序的标识添加到标识列表中;
S202:设置关于扩展应用程序的推送通知参数;
S203:获取操作系统的应用程序推送状态接口,利用应用程序推送状态接口,读取标识列表得到扩展应用程序的标识,并读取扩展应用程序的推送通知参数;
S204:根据读取的扩展应用程序的标识及推送通知参数,在终端上显示关于扩展应用程序的推送通知。
可见,本发明提供的方法实施例中,通过拦截并修改操作系统有关推送通知的设置,从而实现了在扩展应用程序中模拟展现操作系统的推送通知效果。具体的,本发明实施例通过拦截并修改有关push功能的应用程序标识列表及关于push的数据,将扩展应用程序添加到具有push功能的应用程序标识列表中,并设置了有关扩展应用程序的push参数。
本发明实施例中,可采用hook(挂钩或钩子)机制实现拦截标识列表及获取并设置推送通知参数。本领域技术人员了解,hook机制允许应用程序截获处理操作系统的消息或特定事件。钩子实际上是一个处理消息的程序段,通过系统调用,把它挂入系统。每当特定的消息发出,在没有到达目的窗口前,钩子程序就先捕获该消息,亦即钩子函数先得到控制权。这时钩子函数即可以加工处理(改变)该消息,也可以不作处理而继续传递该消息,还可以强制结束消息的传递。
在本发明实施例中,利用hook机制,获取操作系统所有注册push服务的第三方软件的唯一标识列表,然后将待开启推送通知的扩展应用程序的标识添加到该列表中;利用hook机制,获取到扩展应用程序关于push信息的类型信息;以及,利用hook机制,设置扩展应用程序push功能的参数数据。
此外,利用hook机制获取操作系统的应用程序推送状态接口,继而读取自定义的有关扩展应用程序的push信息,达到展现扩展应用程序推送通知的系统环境,在需要弹出推送通知时,基于生成的符合系统底层标准的数据结构及赋予的各项参数值,使用系统底层接口弹出推送通知。其中,对于iOS系统,可利用系统接口SBRemoteNotificationServer,自行调用iOS的推送通知底层接口,弹出推送通知窗口。由于采用的是系统底层协议,推送的其他特性如点击通知打开应用程序,推送通知横幅,自动消息等与系统原生效果一致。
关于hook机制在本发明中的应用,以下以360手机卫士作为扩展应用程序为例进行说明:
1)需要hook ios系统的读取push应用列表的程序段,在转交给其他程序段处理之前,把360手机卫士应用加入到push应用列表中。
2)需要hook设置应用push参数的程序段,将用户对360手机卫士设置的push展示类型,记录下来,而且以后再关机重启时,会使用之前设置的显示类型,该显示类型包括声音,标记,弹窗等。
3)需要hook iOS系统启动的程序段,记录下系统的一些特殊对象,在后来的程序段中修改这些对象的数据。
如上已经提到的,设置关于扩展应用程序的推送通知参数包括设置通知的类型信息和设置通知的内容数据。具体地,以iOS系统为例,可在扩展应用程序中模拟展现iOS系统的推送通知效果,包括声音,标记,震动,弹窗提示,以及在通知中心展示等。
关于内容数据,是指弹出推送通知时的提示文字,如“收到新的模拟push通知”,和同时发出的提示音。具体的,push样式可为横幅,也可以为提醒。
关于类型信息,仍以360手机卫士作为扩展应用程序为例,可以在手机“设置——通知——360手机卫士”中看到。该设置具体涉及:
1)是否在通知中心中显示。
2)在通知中心中显示的最大条数。
3)提醒样式,不提醒、横幅和弹窗三种。
4)应用程序图标标记,在手机屏幕中软件图标右上角是否显示数字标记。
5)声音开关,是否在收到push消息时同时发出声音。具体声音有系统默认声音,也可以应用在push内容中设定。
6)在锁定的屏幕显示开关,锁屏时收到push消息是否直接显示在屏幕上,还是在解锁屏幕后,再弹出提示。
使用越狱版手机卫士的通话录音功能,在第一次使用通话录音结束的时候,提示用户,录音文件已经保存在“通话录音”功能中,可以打开卫士查看。
在本发明实施例中,与系统原有推送通知一样,允许用户在系统通知设置中设置关于推送通知的各项参数。具体地,当用户修改关于某个扩展应用程序的推送通知设置参数时,将最新状态数据保存到自定义文件中,以便在用户关机重启后保留最新设置的状态。
其中,本领域技术人员可以理解,步骤S201-S202预先在系统底层执行即可,而无需在每次弹出推送通知都执行。而步骤S203-S204是在每次需要显示推送通知时是实时执行的。
本发明实施例至少可在以下场景时,确定需要显示推送通知:
(1)当应用程序退到系统后台时,通过保留延时函数,当到达特定时间点或者在下载数据完成时,弹出推送通知。
(2)在系统后台,采用向服务器轮询机制,每隔一段时间(例如:5秒)向服务器查询一次状态,当查询的状态符合特定条件时,弹出推送通知。
(3)在系统后台,创建一个socket(套接字)通信,,当收到的消息根据预置规则需要给予用户提醒时,弹出推送通知。
本发明方法实施例具体至少以下技术效果:
(1)由于本发明实施例通过拦截并修改有关push功能的消息和事件(包括启用push的应用程序标识列表及关于push的数据结构),将扩展应用程序添加到具有push功能的应用程序标识列表中,并设置了有关扩展应用程序的push数据结构。简言之,本发明实施例通过hook机制,实现扩展应用程序的了推送通知功能。
(2)对于终端及用户而言,通过上述修改和设置,扩展应用程序和从App Store下载的应用程序一样,都可以展现推送通知功能,并且也可向用户提供修改push参数的界面。
(3)对于用户而言,通过本发明实施例实现的扩展应用程序上的推送通知与别的应用程序的推送通知效果一致。
(4)由于本发明是基于系统原有推送功能的实现方式,也就是没有额外增加系统负担,因此不会干扰系统的正常运行。
(5)由于本发明仅通过在终端对有关push的数据结构进行拦截和修改即可实现,可不涉及网络侧的改动,因此实现简单。
与上述方法实施例相对应,本发明还提供一种实现扩展应用程序的推送通知的装置。本领域技术人员可以理解的是,该装置可以是又硬件,软件,或者,软硬件结合方式实现。该装置可以位于终端一侧,也可以是与网络侧结合的设备。在位于终端一侧的情况下,它可以是指终端内部的一个设备,也可以指终端本身,只要终端包含此装置功能即可。
参见图3,为本发明装置实施例的结构示意图。该装置包括列表修改单元301,参数设置单元302,接口读取单元303,以及,推送显示单元304。
下面对各单元的功能及它们之间的连接关系作详细介绍。
列表修改单元301,用于拦截操作系统上注册了推送通知的应用程序的标识列表,将扩展应用程序的标识添加到标识列表中。
具体地,列表修改单元301可采用hook机制实现标识列表的拦截。如前所述,hook机制允许应用程序截获处理操作系统的消息或特定事件。在本发明中,列表修改单元301利用hook机制,获取操作系统所有注册push服务的第三方软件的唯一标识列表,然后将待开启推送通知的扩展应用程序的标识添加到该列表中。
参数设置单元302,用于设置关于扩展应用程序的推送通知参数。
本发明实施例中,参数设置单元302可利用hook机制,获取到扩展应用程序关于push信息的类型信息;以及,利用hook机制,设置扩展应用程序push功能的参数数据。具体地,以iOS系统为例,可在扩展应用程序中模拟展现iOS系统的推送通知效果,包括声音、标记、震动、弹窗提示以及在通知中心展示等。
接口读取单元303,与列表修改单元301,参数设置单元302及推送显示单元304连接。接口读取单元303用于获取操作系统的应用程序推送状态接口,利用应用程序推送状态接口,读取列表修改单元301得到扩展应用程序的标识,并读取参数设置单元302得到扩展应用程序的推送通知参数。
本发明中,可利用hook机制获取操作系统的应用程序推送状态接口,继而读取自定义的有关扩展应用程序的push信息,达到展现扩展应用程序推送通知的系统环境,在需要弹出推送通知时,基于生成的符合系统底层标准的数据结构及赋予的各项参数值,使用系统底层接口弹出推送通知。
推送显示单元304,用于根据接口读取单元303读取的扩展应用程序的标识及推送通知参数,在终端上显示关于扩展应用程序的推送通知。
此外,在本发明装置实施例中,与系统原有推送通知一样,允许用户在系统通知设置中设置关于推送通知的各项参数。具体地,当用户修改关于某个扩展应用程序的推送通知设置参数时,将最新状态数据保存到自定义文件中,以便在用户关机重启后保留最新设置的状态。此时,参数设置单元302还用于接收并保存用户输入的有关所述扩展应用程序的推送通知的状态数据;推送显示单元304在终端重启后根据接口读取单元303读取的最新状态数据显示推送通知。
此外,可在以下(1)-(3)条件下启动接口读取单元303读取扩展应用程序的标识和推送通知参数以及启动推送显示单元304显示所述推送通知:(1)扩展应用程序退到后台时,延时函数到达预设时间点;(2)在操作系统后台,轮询系统服务器状态符合推送条件时;(3)在操作系统后台,创建套接字socket通信,当接收到的消息根据预置规则需要给予用户提醒时。
可见,由于本发明实施例通过拦截并修改有关push功能的消息和事件(包括启用push的应用程序标识列表及关于push的数据结构),将扩展应用程序添加到具有push功能的应用程序标识列表中,并设置了有关扩展应用程序的push数据结构。简言之,本发明实施例通过hook机制,实现扩展应用程序的了推送通知功能。
对于终端及用户而言,通过上述修改和设置,扩展应用程序和从App Store下载的应用程序一样,都可以展现推送通知功能,并且也可向用户提供修改push参数的界面。对于用户而言,通过本发明实施例实现的扩展应用程序上的推送通知与别的应用程序的推送通知效果一致。
此外,由于本发明是基于系统原有推送功能的实现方式,也就是没有额外增加系统负担,因此不会干扰系统的正常运行。而且,由于本发明仅通过在终端对有关push的数据结构进行拦截和修改即可实现,可不涉及网络侧的改动,因此实现简单。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的实现扩展应用程序的推送通知的装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
本发明公开了A1、一种实现扩展应用程序的推送通知的方法,所述扩展应用程序是指需要在已利用系统权限克服操作系统施加的程序安装限制的环境下安装的应用程序,包括:
拦截操作系统上注册了推送通知的应用程序的标识列表,将所述扩展应用程序的标识添加到所述标识列表中;
设置关于所述扩展应用程序的推送通知参数;
获取操作系统的应用程序推送状态接口,在需要显示推送通知时,利用所述应用程序推送状态接口,读取所述标识列表得到所述扩展应用程序的标识,并读取所述扩展应用程序的推送通知参数;
根据读取的所述扩展应用程序的标识及推送通知参数,在终端上显示关于所述扩展应用程序的推送通知。
A2、如A1所述的方法,
采用hook机制拦截操作系统上注册推送通知的应用程序的标识列表,得到关于扩展应用程序的推送通知参数,以及,获取操作系统的应用程序推送状态接口。
A3、如A1所述的方法,所述设置关于扩展应用程序的推送通知参数包括:
设置关于所述扩展应用程序的推送通知的类型信息;
设置关于所述扩展应用程序的推送通知的内容数据。
A4、如A3所述的方法,所述类型信息包括声音,震动,和/或,标记。
A5、如A1、A2、A3或A4所述的方法,还包括:
接收用户输入的有关所述扩展应用程序的推送通知的状态数据;
保存所述状态数据;
在终端重启后根据最新状态数据显示推送通知。
A6、如A1至A5任一项所述的方法,在以下条件时,确定所述需要显示推送通知:
所述扩展应用程序退到后台时,延时函数达到预设时间点;或,
在操作系统后台,轮询系统服务器状态符合推送条件时;或,
在操作系统后台,创建套接字socket通信,当接收到的消息根据预置规则需要给予用户提醒时。
B7、一种实现扩展应用程序的推送通知的装置,所述扩展应用程序是指需要在已利用系统权限克服操作系统施加的程序安装限制的环境下安装的应用程序,包括:
列表修改单元,用于拦截操作系统上注册了推送通知的应用程序的标识列表,将所述扩展应用程序的标识添加到所述标识列表中;
参数设置单元,用于设置关于所述扩展应用程序的推送通知参数;
接口读取单元,用于获取操作系统的应用程序推送状态接口,利用所述应用程序推送状态接口,读取所述列表修改单元得到所述扩展应用程序的标识,并读取所述参数设置单元得到所述扩展应用程序的推送通知参数;
推送显示单元,用于根据所述接口读取单元读取的所述扩展应用程序的标识及推送通知参数,在终端上显示关于所述扩展应用程序的推送通知。
B8、如B7所述的装置,
所述列表修改单元采用hook机制拦截操作系统上注册推送通知的应用程序的标识列表;所述参数设置单元采用hook机制得到推送通知参数;所述接口读取单元通过hook机制得到应用程序推送状态接口。
B9、如B7所述的装置,所述参数设置单元设置关于所述扩展应用程序的推送通知的类型信息及内容数据。
B10、如B9所述的装置,所述参数设置单元设置的类型信息包括声音,震动,和/或,标记。
B11、如B7、B8、B9或B10所述的装置,所述参数设置单元还用于接收并保存用户输入的有关所述扩展应用程序的推送通知的状态数据;所述推送显示单元在终端重启后根据接口读取单元最新状态数据显示推送通知。
B12、如B7至B11任一项所述的装置,在以下条件下启动所述接口读取单元读取所述扩展应用程序的标识和推送通知参数以及启动所述推送显示单元显示所述推送通知:
所述扩展应用程序退到后台时,延时函数到达预设时间点;或,
在操作系统后台,轮询系统服务器状态符合推送条件时;或,
在操作系统后台,创建套接字socket通信,当接收到的消息根据预置规则需要给予用户提醒时。
Claims (10)
1.一种实现扩展应用程序的推送通知的方法,所述扩展应用程序是指需要在已利用系统权限克服操作系统施加的程序安装限制的环境下安装的应用程序,其特征在于,包括:
拦截操作系统上注册了推送通知的应用程序的标识列表,将所述扩展应用程序的标识添加到所述标识列表中;
设置关于所述扩展应用程序的推送通知参数;
获取操作系统的应用程序推送状态接口,在需要显示推送通知时,利用所述应用程序推送状态接口,读取所述标识列表得到所述扩展应用程序的标识,并读取所述扩展应用程序的推送通知参数;
根据读取的所述扩展应用程序的标识及推送通知参数,在终端上显示关于所述扩展应用程序的推送通知。
2.如权利要求1所述的方法,其特征在于,
采用hook机制拦截操作系统上注册推送通知的应用程序的标识列表,得到关于扩展应用程序的推送通知参数,以及,获取操作系统的应用程序推送状态接口。
3.如权利要求1所述的方法,其特征在于,所述设置关于扩展应用程序的推送通知参数包括:
设置关于所述扩展应用程序的推送通知的类型信息;
设置关于所述扩展应用程序的推送通知的内容数据。
4.如权利要求1、2或3所述的方法,其特征在于,还包括:
接收用户输入的有关所述扩展应用程序的推送通知的状态数据;
保存所述状态数据;
在终端重启后根据最新状态数据显示推送通知。
5.如权利要求1至4任一项所述的方法,其特征在于,在以下条件时,确定所述需要显示推送通知:
所述扩展应用程序退到后台时,延时函数达到预设时间点;或,
在操作系统后台,轮询系统服务器状态符合推送条件时;或,
在操作系统后台,创建套接字socket通信,当接收到的消息根据预置规则需要给予用户提醒时。
6.一种实现扩展应用程序的推送通知的装置,所述扩展应用程序是指需要在已利用系统权限克服操作系统施加的程序安装限制的环境下安装的应用程序,其特征在于,包括:
列表修改单元,用于拦截操作系统上注册了推送通知的应用程序的标识列表,将所述扩展应用程序的标识添加到所述标识列表中;
参数设置单元,用于设置关于所述扩展应用程序的推送通知参数;
接口读取单元,用于获取操作系统的应用程序推送状态接口,利用所述应用程序推送状态接口,读取所述列表修改单元得到所述扩展应用程序的标识,并读取所述参数设置单元得到所述扩展应用程序的推送通知参数;
推送显示单元,用于根据所述接口读取单元读取的所述扩展应用程序的标识及推送通知参数,在终端上显示关于所述扩展应用程序的推送通知。
7.如权利要求6所述的装置,其特征在于,
所述列表修改单元采用hook机制拦截操作系统上注册推送通知的应用程序的标识列表;所述参数设置单元采用hook机制得到推送通知参数;所述接口读取单元通过hook机制得到应用程序推送状态接口。
8.如权利要求6所述的装置,其特征在于,所述参数设置单元设置关于所述扩展应用程序的推送通知的类型信息及内容数据。
9.如权利要求6、7或8所述的装置,其特征在于,所述参数设置单元还用于接收并保存用户输入的有关所述扩展应用程序的推送通知的状态数据;所述推送显示单元在终端重启后根据接口读取单元最新状态数据显示推送通知。
10.如权利要求6至9任一项所述的装置,其特征在于,在以下条件下启动所述接口读取单元读取所述扩展应用程序的标识和推送通知参数以及启动所述推送显示单元显示所述推送通知:
所述扩展应用程序退到后台时,延时函数到达预设时间点;或,
在操作系统后台,轮询系统服务器状态符合推送条件时;或,
在操作系统后台,创建套接字socket通信,当接收到的消息根据预置规则需要给予用户提醒时。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310505295.3A CN103595766B (zh) | 2013-10-23 | 2013-10-23 | 实现扩展应用程序的推送通知的方法及装置 |
PCT/CN2014/083906 WO2015058574A1 (zh) | 2013-10-23 | 2014-08-07 | 实现扩展应用程序的推送通知的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310505295.3A CN103595766B (zh) | 2013-10-23 | 2013-10-23 | 实现扩展应用程序的推送通知的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103595766A true CN103595766A (zh) | 2014-02-19 |
CN103595766B CN103595766B (zh) | 2016-10-19 |
Family
ID=50085746
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310505295.3A Active CN103595766B (zh) | 2013-10-23 | 2013-10-23 | 实现扩展应用程序的推送通知的方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN103595766B (zh) |
WO (1) | WO2015058574A1 (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015058574A1 (zh) * | 2013-10-23 | 2015-04-30 | 北京奇虎科技有限公司 | 实现扩展应用程序的推送通知的方法及装置 |
CN104834534A (zh) * | 2015-06-09 | 2015-08-12 | 北京奇虎科技有限公司 | 扩展应用程序功能的方法、装置及系统 |
CN105095749A (zh) * | 2014-05-22 | 2015-11-25 | 北京奇虎科技有限公司 | 状态栏通知的接管方法及装置 |
CN105430435A (zh) * | 2015-11-25 | 2016-03-23 | 传线网络科技(上海)有限公司 | 一种ios系统中推送视频文件下载的方法及系统 |
WO2016082194A1 (zh) * | 2014-11-28 | 2016-06-02 | 华为技术有限公司 | 消息处理方法及装置 |
CN104123162B (zh) * | 2014-07-29 | 2017-06-16 | 北京奇虎科技有限公司 | 控制应用程序自启的方法及装置 |
CN108319929A (zh) * | 2018-03-02 | 2018-07-24 | 刘洪强 | 手机推送信息智能化管理系统及方法 |
CN108401020A (zh) * | 2018-02-12 | 2018-08-14 | 湖南快乐阳光互动娱乐传媒有限公司 | 一种智能终端消息推送系统及方法 |
CN108694311A (zh) * | 2018-03-02 | 2018-10-23 | 刘洪强 | 手机推送信息智能化管理系统 |
CN109508127A (zh) * | 2018-10-24 | 2019-03-22 | 深圳传音通讯有限公司 | 一种智能终端的锁屏信息展示方法及该智能终端 |
CN109814954A (zh) * | 2017-11-21 | 2019-05-28 | 腾讯科技(深圳)有限公司 | 推送消息接收方法、装置、存储介质和计算机设备 |
CN111045835A (zh) * | 2019-10-24 | 2020-04-21 | 京东数字科技控股有限公司 | 一种信息推送方法、装置、电子设备及存储介质 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115004667B (zh) * | 2020-04-24 | 2024-04-02 | 深圳市欢太科技有限公司 | 信息推送方法、装置、电子设备及计算机可读介质 |
CN113360752A (zh) * | 2021-04-23 | 2021-09-07 | 山东英信计算机技术有限公司 | 一种消息推送的方法、装置、设备及可读介质 |
CN113485903A (zh) * | 2021-07-09 | 2021-10-08 | 郑州阿帕斯数云信息科技有限公司 | 一种基于hook的参数统计方法和装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101026795A (zh) * | 2006-02-22 | 2007-08-29 | 捷讯研究有限公司 | 用于促进推送内容的传递和处理的装置及相关方法 |
US20070276863A1 (en) * | 2006-05-02 | 2007-11-29 | Research In Motion Limited | Plug in registration method and apparatus for push content delivery |
CN102387215A (zh) * | 2011-11-11 | 2012-03-21 | 广东威创视讯科技股份有限公司 | 基于关系对象的信息分享方法及系统 |
US20120210415A1 (en) * | 2011-02-11 | 2012-08-16 | Visto Corporation | Method, apparatus and system for provisioning a push notification session |
CN103299658A (zh) * | 2010-11-19 | 2013-09-11 | 移动熨斗公司 | 移动应用的管理 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8819244B2 (en) * | 2010-04-07 | 2014-08-26 | Apple Inc. | Apparatus and method for establishing and utilizing backup communication channels |
CN103001926A (zh) * | 2011-09-09 | 2013-03-27 | 华为技术有限公司 | 一种订阅通知的方法、装置和系统 |
CN103309666B (zh) * | 2013-06-09 | 2016-08-24 | 北京奇虎科技有限公司 | 一种软件运行控制方法和装置 |
CN103595766B (zh) * | 2013-10-23 | 2016-10-19 | 北京奇虎科技有限公司 | 实现扩展应用程序的推送通知的方法及装置 |
-
2013
- 2013-10-23 CN CN201310505295.3A patent/CN103595766B/zh active Active
-
2014
- 2014-08-07 WO PCT/CN2014/083906 patent/WO2015058574A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101026795A (zh) * | 2006-02-22 | 2007-08-29 | 捷讯研究有限公司 | 用于促进推送内容的传递和处理的装置及相关方法 |
US20070276863A1 (en) * | 2006-05-02 | 2007-11-29 | Research In Motion Limited | Plug in registration method and apparatus for push content delivery |
CN103299658A (zh) * | 2010-11-19 | 2013-09-11 | 移动熨斗公司 | 移动应用的管理 |
US20120210415A1 (en) * | 2011-02-11 | 2012-08-16 | Visto Corporation | Method, apparatus and system for provisioning a push notification session |
CN102387215A (zh) * | 2011-11-11 | 2012-03-21 | 广东威创视讯科技股份有限公司 | 基于关系对象的信息分享方法及系统 |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015058574A1 (zh) * | 2013-10-23 | 2015-04-30 | 北京奇虎科技有限公司 | 实现扩展应用程序的推送通知的方法及装置 |
CN105095749A (zh) * | 2014-05-22 | 2015-11-25 | 北京奇虎科技有限公司 | 状态栏通知的接管方法及装置 |
CN105095749B (zh) * | 2014-05-22 | 2018-03-27 | 北京奇虎科技有限公司 | 状态栏通知的接管方法及装置 |
CN104123162B (zh) * | 2014-07-29 | 2017-06-16 | 北京奇虎科技有限公司 | 控制应用程序自启的方法及装置 |
US10187855B2 (en) | 2014-11-28 | 2019-01-22 | Huawei Technologies Co., Ltd. | Message processing method and apparatus |
WO2016082194A1 (zh) * | 2014-11-28 | 2016-06-02 | 华为技术有限公司 | 消息处理方法及装置 |
CN104834534A (zh) * | 2015-06-09 | 2015-08-12 | 北京奇虎科技有限公司 | 扩展应用程序功能的方法、装置及系统 |
CN105430435A (zh) * | 2015-11-25 | 2016-03-23 | 传线网络科技(上海)有限公司 | 一种ios系统中推送视频文件下载的方法及系统 |
CN105430435B (zh) * | 2015-11-25 | 2019-04-09 | 传线网络科技(上海)有限公司 | 一种ios系统中推送视频文件下载的方法及系统 |
CN109814954A (zh) * | 2017-11-21 | 2019-05-28 | 腾讯科技(深圳)有限公司 | 推送消息接收方法、装置、存储介质和计算机设备 |
CN108401020A (zh) * | 2018-02-12 | 2018-08-14 | 湖南快乐阳光互动娱乐传媒有限公司 | 一种智能终端消息推送系统及方法 |
CN108694311A (zh) * | 2018-03-02 | 2018-10-23 | 刘洪强 | 手机推送信息智能化管理系统 |
CN108319929A (zh) * | 2018-03-02 | 2018-07-24 | 刘洪强 | 手机推送信息智能化管理系统及方法 |
CN109508127A (zh) * | 2018-10-24 | 2019-03-22 | 深圳传音通讯有限公司 | 一种智能终端的锁屏信息展示方法及该智能终端 |
CN111045835A (zh) * | 2019-10-24 | 2020-04-21 | 京东数字科技控股有限公司 | 一种信息推送方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN103595766B (zh) | 2016-10-19 |
WO2015058574A1 (zh) | 2015-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103595766A (zh) | 实现扩展应用程序的推送通知的方法及装置 | |
CN103078949B (zh) | 显示电话号码信息的方法及系统 | |
CN102981915B (zh) | 一种应用程序间通信方法及装置 | |
CN103116722A (zh) | 一种通知栏消息的处理方法、装置和系统 | |
US10176327B2 (en) | Method and device for preventing application in an operating system from being uninstalled | |
CN103577773A (zh) | 基于Android的移动设备安全保护方法和装置 | |
CN103987130A (zh) | 基于wifi设备的终端接入方法、装置和系统 | |
CN103118355A (zh) | 一种移动终端用户信息的显示方法、移动终端和服务系统 | |
CN103279706A (zh) | 拦截在移动终端中安装安卓应用程序的方法和装置 | |
CN102550003A (zh) | 用于管理持续丰富因特网应用的方法和设备 | |
CN103577750A (zh) | 隐私权限管理方法和装置 | |
CN103034546B (zh) | iOS系统中应用程序间通信的方法及装置 | |
CN104504060A (zh) | 浏览器中下载文件的方法、浏览器客户端和装置 | |
CN103747010A (zh) | 一种通过移动终端控制pc的方法、系统及装置 | |
CN103973704A (zh) | 基于wifi设备的域名解析方法、装置及系统 | |
CN105528251B (zh) | 应用通知信息的处理方法、装置及移动终端 | |
CN103793248A (zh) | 一种应用程序升级的方法及装置 | |
CN103607502A (zh) | 一种对移动设备的应用进行升级的方法和装置 | |
CN103139761A (zh) | 一种信息实时展示的方法和移动通讯终端 | |
CN103634935A (zh) | 基于wps或qss的网络接入方法和装置 | |
CN104580267A (zh) | 一种资源下载方法、装置、服务器和相应的系统 | |
CN105095749A (zh) | 状态栏通知的接管方法及装置 | |
CN105094791A (zh) | 状态栏通知的存储方法及装置 | |
CN116578297A (zh) | H5页面的运行方法、装置、电子设备及存储介质 | |
CN109218370A (zh) | 消息发送方法及装置、电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220714 Address after: Room 801, 8th floor, No. 104, floors 1-19, building 2, yard 6, Jiuxianqiao Road, Chaoyang District, Beijing 100015 Patentee after: BEIJING QIHOO TECHNOLOGY Co.,Ltd. Address before: 100088 room 112, block D, 28 new street, new street, Xicheng District, Beijing (Desheng Park) Patentee before: BEIJING QIHOO TECHNOLOGY Co.,Ltd. Patentee before: Qizhi software (Beijing) Co.,Ltd. |
|
TR01 | Transfer of patent right |