The invention relates to a method, a system and a client for loading plug-in SDK. The method of loading the plug-in SDK, which comprises the following steps: at least one update for the current application plug-in SDK; when restarting the current application, for each of the updated plug-in SDK to perform dynamic load steps; dynamic loading method comprises the following steps: will update the SDK plug-in code and the application code merged; the local library and the application of the local library with updated plugin SDK; will update the SDK plug-in resources and current application resources. The loading plug-in SDK, the system and the client can realize the decoupling of the function software development and application, and make the application more efficient and safe.
【技术实现步骤摘要】
加载插件SDK的方法、系统及客户端
本专利技术涉及智能终端
,特别是涉及一种加载插件SDK的方法、系统及客户端。
技术介绍
目前应用接入第三方SDK(SoftwareDevelopmentKit,软件开发工具包)的主要方式是应用直接硬编码静态加载第三方SDK。而静态加载第三方SDK是在应用发布时,将应用本身的逻辑和第三方SDK的代码、资源合并在一个apk(AndroidPackage,Android安装包)发布到应用市场。一旦发布,这个apk将无法修改,apk封装的第三方SDK也无法修改,如果第三方SDK出现bug(问题)时,或者,当第三方SDK升级时,需要将应用原始工程与更新的第三方SDK重新融合形成新的apk再发布。这种方式中,功能软件开发与应用的耦合性较高,操作较为复杂,使得无法及时修复bug。并且,当第三方SDK频繁升级时,采用这种方式频繁升级客户端,操作复杂,维护不便,运营成本较高。
技术实现思路
基于此,有必要针对上述技术问题,提供一种加载插件SDK的方法、系统及客户端,其能够实现功能软件开发与应用的解耦,使得应用更加高效和安全。一种加载插件SDK的方法,包括以下步骤:获取当前应用的至少一个更新的插件SDK;当重新启动所述当前应用时,对每个所述更新的插件SDK执行动态加载的步骤;所述动态加载的步骤包括:将所述更新的插件SDK的代码与所述当前应用的代码合并;将所述更新的插件SDK的本地库与所述当前应用的本地库合并;将所述更新的插件SDK的资源与所述当前应用的资源合并。在其中一些实施例中,所述将所述更新的插件SDK的资源与所述当前应用的资源合并的 ...
【技术保护点】
一种加载插件SDK的方法,其特征在于,包括以下步骤:获取当前应用的至少一个更新的插件SDK;当重新启动所述当前应用时,对每个所述更新的插件SDK执行动态加载的步骤;所述动态加载的步骤包括:将所述更新的插件SDK的代码与所述当前应用的代码合并;将所述更新的插件SDK的本地库与所述当前应用的本地库合并;将所述更新的插件SDK的资源与所述当前应用的资源合并。
【技术特征摘要】
1.一种加载插件SDK的方法,其特征在于,包括以下步骤:获取当前应用的至少一个更新的插件SDK;当重新启动所述当前应用时,对每个所述更新的插件SDK执行动态加载的步骤;所述动态加载的步骤包括:将所述更新的插件SDK的代码与所述当前应用的代码合并;将所述更新的插件SDK的本地库与所述当前应用的本地库合并;将所述更新的插件SDK的资源与所述当前应用的资源合并。2.根据权利要求1所述的方法,其特征在于,所述将所述更新的插件SDK的资源与所述当前应用的资源合并的步骤包括:通过反射调用应用程序资源管理器的成员函数将所述更新的插件SDK的资源加载到所述当前应用的资源对象中。3.根据权利要求1所述的方法,其特征在于,所述将所述更新的插件SDK的本地库与所述当前应用的本地库合并的步骤包括:通过反射类加载器,将所述更新的插件SDK的本地库路径添加到当前应用的本地库的加载路径中。4.根据权利要求1所述的方法,其特征在于,将所述更新的插件SDK的代码与所述当前应用的代码合并的步骤包括:扩展类加载器中的数组成员变量,将所述更新的插件SDK的代码与所述当前应用的代码合并。5.根据权利要求1所述的方法,其特征在于,在对每个所述更新的插件SDK执行动态加载的步骤之前,所述方法还包括:为每个所述更新的插件SDK配置统一接口SDK,通过所述统一接口SDK调用所述更新的插件SDK。6.根据权利要求1所述的方法,其特征在于,所述获取当前应用的至少一个更新的插件SDK的步骤包括:向服务器发送更新所述当前应用的插件SDK的请求,并接收所述服务器下发的包含所述至少一个更新的插件SDK的SDK更新包;将所述SDK更新包解压,获取所述至少一个更新的插件SDK;或者接收服务器推...
【专利技术属性】
技术研发人员:陈胜,谭嘉津,吕博扬,
申请(专利权)人:博雅网络游戏开发深圳有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。