Android系统下客户端对服务器中应用程序的控制方法技术方案

技术编号:14493145 阅读:66 留言:0更新日期:2017-01-29 15:47
本发明专利技术公开了一种Android系统下客户端对服务器中应用程序的控制方法,包括以下步骤:(1)、客户端通过网络向服务器发送请求,(2)、服务器中的WebServer服务接收并解析所述请求,将请求中调用的函数名、参数名和参数值转发给插件的ContentProvider;(3)、插件的ContentProvider将调用的函数名、参数名和参数值作为其参数传递给插件的call函数;(4)、插件的call函数查找到该函数并运行该函数,运行完毕后返回运行结果;(5)、服务器将运行结果发送至客户端。本发明专利技术的控制方法,不需要修改底层的源码,通过添加或者修改插件来添加或者修改向外提供的接口,实现了客户端对搭载Android系统的服务器中应用程序的控制,服务与插件、插件与插件间互相独立、互不影响,耦合性低。

【技术实现步骤摘要】

本专利技术涉及一种应用程序的控制方法,具体地说,是涉及一种Android系统下客户端对服务器中应用程序的控制方法
技术介绍
当前Android系统应用越来越广泛,很多设备都搭载了Android系统,随着硬件的发展Android设备的处理速度也有很大的提高,因此也出现了Android设备作为服务器的需求。现有方案可以访问到Android设备中的图片、音乐、视频等文件,但无法访问安装程序中的内容,给使用带来较大限制。
技术实现思路
本专利技术为了解决现有Android设备之间仅能访问图片、音乐、视频等文件,但无法访问安装程序中的内容,给使用带来较大限制的技术问题,提出了一种Android系统下客户端对服务器中应用程序的控制方法,可以解决上述问题。为了解决上述技术问题,本专利技术采用以下技术方案予以实现:Android系统下客户端对服务器中应用程序的控制方法,所述服务器搭载有Android系统,包括以下步骤:(1)、客户端通过网络向服务器发送请求,所述请求至少包括插件的包名、调用的函数名、参数名和参数值;(2)、所述服务器中的WebServer服务接收并解析所述请求,根据插件的包名在本地Android包管理文件中查找对应的插件,然后将所述请求中调用的函数名、参数名和参数值转发给所述插件的ContentProvider;(3)、所述插件的ContentProvider将调用的函数名、参数名和参数值作为其参数传递给插件的call函数;(4)、所述插件的call函数根据所述调用的函数名,查找到该函数,将所述参数名和参数值传递给该函数,并运行该函数,运行完毕后返回运行结果至所述call函数;(5)、所述服务器将所述运行结果发送至所述客户端。进一步的,所述服务器中设置有广播接收器,所述广播接收器用于接收服务器开机的广播,当服务器开机时即启动所述WebServer服务。进一步的,步骤(5)中,所述Webserver服务所述运行结果封装成HttpResponse发送至所述客户端。进一步的,在步骤(1)之前,还包括插件在Android清单文件中声明可读权限的步骤,在本步骤中,对外提供控制的插件将其所包含的其中一个ContentProvider声明可读权限,步骤(2)和步骤(3)中,所述插件的ContentProvider为该插件中声明可读权限的ContentProvider。进一步的,当一个插件中同时多个ContentProvider被声明为可读权限时,只有排序第一个的ContentProvider被发现。进一步的,客户端向服务器发送的请求为URL格式。进一步的,所述WebServer服务是多线程的,可以同时接收并处理多个请求。与现有技术相比,本专利技术的优点和积极效果是:本专利技术的Android系统下客户端对服务器中应用程序的控制方法,不需要修改底层的源码,通过添加或者修改插件来添加或者修改向外提供的接口,实现了Android系统下客户端对服务器中应用程序的控制,插件和Webserver服务是相互独立的应用程序,服务与插件、插件与插件间互相独立、互不影响,耦合性低。结合附图阅读本专利技术实施方式的详细描述后,本专利技术的其他特点和优点将变得更加清楚。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术所提出的Android系统下客户端对服务器中应用程序的控制方法的一种实施例流程图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。实施例一,本实施例提出了一种Android系统下客户端对服务器中应用程序的控制方法,其中,服务器搭载有Android系统,该控制方法包括以下步骤:S1、客户端向服务器发送请求,请求至少包括插件的包名、调用的函数名、参数名和参数值;在本实施例中,优选客户端通过网络向服务器发送的请求为URL格式,通过将插件的包名、调用的函数名、参数名和参数值写成URL格式,URL具有唯一性特点,它包含的信息指出文件的位置以及处理方式信息,使得请求传输方便易识别。WebServer服务安装于作为服务器的Android设备中,作为客户端的设备需要安装相应的客户端程序,客户端操作客户端程序,生成请求并通过网络发送至服务器,由服务器的WebServer服务接收。S2、服务器接收并解析请求,根据插件的包名在本地Android包管理文件中查找对应的插件,然后将请求中的调用的函数名、参数名和参数值转发给所述插件的ContentProvider;插件是服务器中可以对外提供接口的应用程序,服务器中可以有多个插件,但只需要一个Webserver服务。任何Android设备只要安装了Webserver服务即可转换成Web服务器,不需要修改底层的源码。而且,服务器只需通过添加或者修改插件的属性来添加或者修改向外提供的接口。插件和Webserver服务是相互独立的应用程序,服务与插件、插件与插件间互相独立、互不影响,从而降低耦合性。S3、插件的ContentProvider将调用的函数名、参数名和参数值作为其参数传递给插件的call函数;ContentProvider(内容提供者)是Android中的四大组件之一,主要用于对外共享数据,也就是通过ContentProvider把应用中的数据共享给其他应用访问,其他应用可以通过ContentProvider对指定应用中的数据进行操作。在Android4.4(APIlevel17)以上的SDK里面,ContentProvider提供了一个新的接口publicBundlecall(Stringmethod,Stringarg,Bundleextras),利用这个接口不需要编写AIDL文件以及实现Service子类就可以实现进程间通信(RPC),通过call方法调用具体的函数得到处理结果。S4、插件的call函数根据所述调用的函数名,查找到该函数,将参数名和参数值传递给该函数,并运行该函数,运行完毕后返回运行结果至call函数;S5、服务器将运行结果发送至客户端。作为服务器的Android设备需要在系统启动时即启动Webserver服务,以能够实时监听客户端发送的请求,实现作为服务器的功能,本实施例中优选服务器中设置有广播接收器,所述广播接收器用于接收服务器开机的广播,当服务器开机时即启动所述WebServer服务。Webserver服务在设备开机时启动,监听网络中的请求,根据请求的内容查找到具体插件中的函数,并将函数处理结果返回给客户端。步骤S5中,所述Webserver服务所述运行结果封装成HttpResponse发送至所述客户端,以方便数据的发送与接收识别。在步骤S1之前,还包括插件在Android清单文件中声明可读权限的步骤,在本步骤中,对外提供控制的插件将其所包含本文档来自技高网...
Android系统下客户端对服务器中应用程序的控制方法

【技术保护点】
Android系统下客户端对服务器中应用程序的控制方法,其特征在于:所述服务器搭载有Android系统,包括以下步骤:(1)、客户端通过网络向服务器发送请求,所述请求至少包括插件的包名、调用的函数名、参数名和参数值;(2)、所述服务器中的WebServer服务接收并解析所述请求,根据插件的包名在本地Android包管理文件中查找对应的插件,然后将所述请求中调用的函数名、参数名和参数值转发给所述插件的ContentProvider;(3)、所述插件的ContentProvider将调用的函数名、参数名和参数值作为其参数传递给插件的call函数;(4)、所述插件的call函数根据所述调用的函数名,查找到该函数,将所述参数名和参数值传递给该函数,并运行该函数,运行完毕后返回运行结果至所述call函数;(5)、所述服务器将所述运行结果发送至所述客户端。

【技术特征摘要】
1.Android系统下客户端对服务器中应用程序的控制方法,其特征在于:所述服务器搭载有Android系统,包括以下步骤:(1)、客户端通过网络向服务器发送请求,所述请求至少包括插件的包名、调用的函数名、参数名和参数值;(2)、所述服务器中的WebServer服务接收并解析所述请求,根据插件的包名在本地Android包管理文件中查找对应的插件,然后将所述请求中调用的函数名、参数名和参数值转发给所述插件的ContentProvider;(3)、所述插件的ContentProvider将调用的函数名、参数名和参数值作为其参数传递给插件的call函数;(4)、所述插件的call函数根据所述调用的函数名,查找到该函数,将所述参数名和参数值传递给该函数,并运行该函数,运行完毕后返回运行结果至所述call函数;(5)、所述服务器将所述运行结果发送至所述客户端。2.根据权利要求1所述的控制方法,其特征在于:所述服务器中设置有广播接收器,所述广播接收器用于接收服务器开机的广播,当服务器开机时即启动所述W...

【专利技术属性】
技术研发人员:朱晓佳
申请(专利权)人:歌尔科技有限公司
类型:发明
国别省市:山东;37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1