一种服务共享方法及装置的制造方法

文档序号:8265695阅读:365来源:国知局
一种服务共享方法及装置的制造方法
【技术领域】
[0001]本申请涉及移动互联网领域,尤其涉及一种服务共享方法及装置。
【背景技术】
[0002]在移动系统如常用的安卓(Android)系统中,目前,为应用提供服务的方法有两种:
[0003]一种是,将服务实现于单独的Android安装包(Apk, Android Package)中,用户通过安装Apk包,在需求服务时,指定服务所在Apk包的包名与服务名以连接上服务。该方法要求用户独立安装服务所在Apk包,容易被用户拒绝。如果用户拒绝安装,则客户端将无法使用服务提供的功能。因此,若采用该方法,还需要具有服务缺失的备选方案。如目前的支付宝插件即采取此种方案,插件使用者须进行判断,若用户设备中已经安装支付宝插件,则通过支付宝插件支付,若用户设备中没有安装,则通过Wap页面的方式进行支付。
[0004]另一种是,在所有应用中均设置服务单元,用于各应用间通过创建自身的独立服务实例来提供服务。该方法需要在所有的应用中都设置服务单元,并且,对应同一服务,所有应用应该设置相同的服务名,当有应用请求服务时,由系统从提供同名服务的服务提供者中随机选取一个进行服务。显然,不同应用很可能会创建不同的服务实例,导致用户设备中创建多个服务实例,造成电量和流量的浪费。

【发明内容】

[0005]为了解决上述技术问题,本申请提供了一种服务共享方法及装置,无需在应用中安装独立的服务包,同时对于使用服务的多个应用只需要创建一个共享服务实例,从而节约电量与流量。
[0006]为了达到本申请目的,本申请提供一种服务共享方法,包括:
[0007]应用打开时,应用打开方判断出当前打开的应用所包含的服务优于当前共享服务,向当前共享服务的提供方发送迁移信息;
[0008]所述当前共享服务的提供方向迁移方发送迁移信息后,退出服务;
[0009]所述迁移方接收到迁移信息,向所述应用打开方打开的应用所包含的服务进行注
ΠΠ
/ttr O
[0010]所述向当前共享服务的提供方发送迁移信息包括:
[0011]所述应用打开方从全局配置信息中查询所述当前共享服务的信息,如果所述当前打开的应用所包含的服务的级别高于查询到的信息显示的当前共享服务的级别,则所述应用打开方向当前共享服务的提供方发送迁移信息;
[0012]所述应用打开方修改所述全局配置以指向所述当前打开的应用所包含的服务。
[0013]如果判断出所述当前打开的应用所包含的服务的级别低于所述当前共享服务的级别,该方法还包括:
[0014]所述应用打开方与所述当前共享服务的提供方之间进行验证,并在双方验证均通过后,所述应用打开方向所述当前共享服务进行注册,结束本流程。
[0015]所述验证未通过,该方法还包括:所述应用打开方修改自身所在应用的全局配置以指向当前打开的应用所包含的服务。
[0016]所述当前共享服务的提供方收到迁移信息后,向迁移方发送迁移信息之前,该方法还包括:
[0017]所述当前共享服务的提供方与所述应用打开方之间进行验证。并在双方验证均通过后,向所述迁移方发送迁移信息;
[0018]如果验证未通过,结束本流程。
[0019]所述迁移方包括已注册在所述当前共享服务的所有应用。
[0020]所述迁移方向应用打开方打开的应用所包含的服务进行注册包括:
[0021]所述迁移方根据所述全局配置信息中的共享服务信息,向所述应用打开方打开的应用所包含的服务进行注册。
[0022]所述注册包括:所述迁移方向所述应用打开方发送注册信息;
[0023]所述应用打开方利用注册信息获得应用ID ;
[0024]所述应用打开方为发起注册的所述迁移方建立应用ID,绑定该应用ID与应用回调钩子;
[0025]所述应用打开方方绑定所述注册信息与迁移回调钩子。
[0026]所述当前共享服务的应用被卸载或由于其他原因无法继续提供服务时,该方法还包括:
[0027]所述当前共享服务所在应用清空全局配置中指向自身的配置项,并向当前所有已注册在所述当前共享服务所在的应用发送通知,以重新确定共享服务。
[0028]本申请还提供一种服务共享装置,包括两个或两个以上应用单元;
[0029]第一应用单元,用于在应用打开、并判断出当前打开的应用所包含的服务优于当前共享服务时,向提供当前共享服务的第二应用单元发送迁移信息,更新共享服务为当前打开的应用所包含的服务;
[0030]第二应用单元,用于将接收到的迁移信息发送给已注册在自身的所有应用单元;
[0031]已注册在当前共享服务的应用单元,一个或一个以上,均用于接收迁移信息,向第一应用单元的应用所包含的服务进行注册。
[0032]所述第一应用单元,还用于在判断出当前打开的应用所包含的服务比当前共享服务的级别低时,与所述第二应用单元之间进行验证,并在双方验证均通过后,向所述当前共享服务进行注册;
[0033]所述第二应用单元具体用于,与所述第一应用单元之间进行验证,并在双方验证均通过后,向所有所述已注册在自身的应用单元发送迁移信息,之后退出服务。
[0034]所述已注册在当前共享服务的应用单元,具体用于向所述第一应用单元的应用所包含的服务发送注册信息;
[0035]所述第一应用单元,还用于利用注册信息获得应用ID ;为已注册在当前共享服务的应用单元建立应用ID ;绑定所述应用ID与应用回调钩子;绑定注册信息与迁移回调钩子。
[0036]所述应用单元包括服务模块、代理模块和应用模块,其中,
[0037]服务模块,用于在应用启动后作为服务的提供方;接受来自代理单元的注册;在收到迁移信息并确认迁移后,向所有已注册在当前共享服务的应用的代理模块发送迁移信息;退出服务并释放资源;
[0038]代理模块,用于启动服务注册过程;在判断出当前打开的应用所包含的服务优于当前共享服务时,向提供当前共享服务所在应用单元的服务模块发送迁移信息;更新共享服务为当前打开的应用所包含的服务;更新共享服务为当前打开的应用所包含的服务;收到迁移信息,重新启动服务注册过程;
[0039]应用模块,用于使用共享服务。
[0040]本申请提供的方案包括,应用打开时,应用打开方判断出当前打开的应用所包含的服务优于当前共享服务,向当前共享服务的提供方发送迁移信息;当前共享服务的提供方向迁移方发送迁移信息后,退出服务,迁移方接收到迁移信息,向应用打开方打开的应用所包含的服务进行注册。通过本发明方法,无需在应用中安装独立的服务包,同时,对于使用服务的多个应用来讲,只需要创建一个当前最优的共享服务实例,从而节约电量与流量。
【附图说明】
[0041]附图用来提供对本申请技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本申请的技术方案,并不构成对本申请技术方案的限制。
[0042]图1为本申请服务共享方法的流程图;
[0043]图2为本申请服务共享装置的组成结构示意图。
【具体实施方式】
[0044]为使本申请的目的、技术方案和优点更加清楚明白,下文中将结合附图对本申请的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
[0045]在本申请一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
[0046]内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
[0047]计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPR0M)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(t
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1