本发明专利技术公开了一种手机游戏安装快速启动方法,通过二进制差分补丁加标准版引擎二进制文件,合成每个游戏所需游戏引擎,而无需在每个游戏下载时各带一份完整的引擎二进制文件;无需下载整个游戏安装包,仅下载游戏的第一个资源分段包即能进入游戏;通过函数注入的方式重定向了游戏资源加载方法,可在本地与服务端请求资源时自动切换。本发明专利技术可以点击即玩,减少玩家等待手机游戏下载和安装的时间,保证游戏的高性能。
【技术实现步骤摘要】
本专利技术涉及游戏开发
,具体是。
技术介绍
手机游戏分原生游戏和HTML5游戏两种技术实现方式。目前手机游戏领域几乎100%的收入都来自原生游戏。HTML5游戏虽然天生具有免安装、分段加载的功能,但由于其运行在手机浏览器之内,性能极度受限,目前无法实现和原生游戏一样的高性能、复杂的游戏内容。这点是行业公认的。本专利技术只针对手机原生游戏,在保证原生游戏性能不变的情况下,实现了 HTML5游戏免安装、分段加载的优点。 手机原生游戏当前的安装启动方式是,需要先从手机应用商店下载完整的游戏安装包。用户下载到游戏安装包之后,需要进入手机操作系统默认的安装流程,手机操作系统会在手机屏幕上弹出对话框,询问用户是否确认要安装这个游戏、是否接受该游戏所需的权限,比如查看短信、通讯录、查看手机串号等,如果用户允许该游戏获得这些权限,则点击确认安装,安装完成后,手机操作系统进一步弹出对话框询问用户,是否要现在立刻启动游戏,还是关闭掉等以后再启动。整个过程需要用户点击手机屏幕3?4次。 手机原生游戏安装包体积和下载时间。经过统计,2014年7月21日当天,360手机助手前100名游戏的安装包体积平均为49.77兆字节,腾讯应用宝前100名游戏的安装包体积平均为36.25兆字节,所以在3G环境下,用户需要等待大约2分钟完成下载过程;在WIFI无线网络环境下,用户需要等待大约4分钟完成下载过程。 游戏内容分段下载和加载的方式,在桌面电脑上的客户端游戏、以及桌面电脑上的网页游戏领域被广泛使用,但截止2010年9月份,在手机游戏领域还很少看到这样的应用方式。目前的分段下载方案也是由各游戏的研发商自行手动切分出资源分段包。 本专利技术的使用场景和目前
技术介绍
的区别是:(I)将分段下载技术应用于大量手机游戏,而不是像现阶段的游戏研发商手工分段方式一样仅适合于自家研发的单款游戏;(2)不需要各游戏的研发商自己做资源分段,而是由本专利技术方案自动完成。
技术实现思路
本专利技术的目的在于提供一种免安装过程、下载和启动时间短的手机游戏安装快速启动方法,以解决上述
技术介绍
中提出的问题。 为实现上述目的,本专利技术提供如下技术方案:,包括以下步骤:(1)通过二进制差分方式合成每个游戏所需的定制版的游戏引擎;当用户从手机界面打开游戏时,首先检测标准版的游戏引擎是否存在,如果不存在则首先下载标准版引擎,如果存在或已下载完毕,则进一步下载游戏定制版引擎的二进制差分补丁,进而从补丁和标准版引擎做二进制差分合成,合出游戏定制版引擎的完整二进制文件; (2)下载游戏的第一个资源分段包即能进入游戏;资源分段包由自动化拆分工具完成拆分之后,部署到服务器上;第一个资源分段包包括游戏首个场景所需的配置文件、图片与音乐等资源,保证玩家顺利进入第一个游戏场景进行游戏;(3)绕过手机操作系统默认的安装确认步骤;下载的手机游戏不在直接运行于手机操作系统之上,而是由本专利技术方案接管了手机操作系统对原生手机游戏生命周期的控制,包括游戏安装、游戏启动、游戏窗口的创建和销毁、游戏退出和游戏卸载;(4)代码加载;通过C++编程语言开发实现的游戏逻辑,在上述步骤(I)的时候已经通过二进制差分完成,通过Java、Lua> JavaScript等其他编程语言开发实现的游戏逻辑,贝U在编译阶段转为字节码之后,作为资源加载运行;(5)资源加载;通过函数注入的方式重定向了游戏资源加载方法,当在手机上找不到所需资源时,则改从服务端寻找并下载对应的分段包。 作为本专利技术进一步的方案:步骤(2)中的资源分段包是由工具自动切割完成,不需要研发商手工分段,而且是应用在手机游戏上。 作为本专利技术进一步的方案:步骤(3)中的手机游指的是原生手机游戏,而非依赖于浏览器运行的手机网页游戏。 与现有技术相比,本专利技术的有益效果是:本专利技术手机游戏免安装快速启动方法构思巧妙、合理,运行稳定可靠,对于游戏玩家,缩短了下载等待时间即可进入游戏内容,免去了手机操作系统要求的安装确认和权限确认的步骤,并且保证运行于本专利技术之上的游戏具有100%手机原生游戏的高性能;对于游戏开发商,不需要自己手动处理复杂繁琐的资源分段工作,只需要半人天以内的接入工作,即可使安装包体积缩小90%左右,从而极大提高了游戏的下载激活转化率,最终提高游戏收入。 【附图说明】 图1是本专利技术实施例的软件架构图;图2是游戏进程和宿主进程之间相互调用、切换关系图;图3是退出游戏流程图;图4是本专利技术的结构流程图。 【具体实施方式】 下面将结合本专利技术实施例,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。 本专利技术实施例,在产品形态上体现为一个软件中间件。宿主程序可以通过集成这个实施例的软件中间件,来达成快速安装启动手机游戏的结果。 请参阅图1-图4,,具体实现步骤包括:1.游戏程序的生命周期本实施例接管了游戏的生命周期,进而追求和操作系统一致的方式和用户体验。因此本方案改造后的手机游戏,对于用户而言跟一般的手机应用/游戏一样,除了增加按手机的返回按钮可以退出游戏之外,其他状态切换行为并没有发生改变。但是由于本实施方案为一个软件中间件,需要通过宿主程序的调用才能工作,因此需要和宿主的生命周期协同工作。 游戏进程和宿主进程之间相互调用、切换关系如图2所示。 1.1初始化宿主在启动游戏之前,需要先对本实施例进行初始化,并获取游戏列表呈现给用户,让用户选择要启动的游戏。 (I)初始化 CocosPlay.1nit(Context context, //初始化的上下文实例String cAppID) //我方分配给宿主的身边识别编号(2)获取游戏列表 CocosPlay.requestGameInfoList(int pagelndex, //游戏列表的页面索引编号int pageSize, //游戏列表的每页提供多少个游戏数量 RequestGameInfoListListener listener) // 请求列表监听者1.2启动游戏宿主程序可以自己定义如何让用户点击进入游戏,比如在游戏详情页面的按钮,或者通过游戏列表直接进入,或者是点击宿主界面上的一个广告插图,或者在桌面上建立一个快捷图标让用户从桌面进入,这由宿主在集成本方案中间件是自行决定。当用户点击某个游戏时,宿主程序需要调用一个接口,把要启动的游戏包名等参数传递给本实施例,然后由中间件启动游戏。 启动游戏的接口伪代码如下: CocosPlay.runGame( Activity activity, // 当前窗口句柄 String packageName, // 游戏包名Drawable bglmage, //游戏加载界面背景图Music bgMusic,//游戏加载界面的背景音乐Listener listener) //设置游戏过程中状态切换事件的监听者1.3退出游戏本实施例中,用户退出游戏有两种方法。 第一种是和默认的手机游戏退出方式一样,先本文档来自技高网...
【技术保护点】
一种手机游戏安装快速启动方法,其特征在于,包括以下步骤:(1)通过二进制差分方式合成每个游戏所需的定制版的游戏引擎;当用户从手机界面打开游戏时,首先检测标准版的游戏引擎是否存在,如果不存在则首先下载标准版引擎,如果标准版引擎已存在或下载完毕,则进一步下载游戏引擎的二进制差分补丁,最后从补丁和标准版引擎做二进制差分合成,合出游戏定制版引擎的完整二进制文件;(2)下载游戏的第一个资源分段包即能进入游戏;资源分段包由自动化拆分工具完成拆分之后,部署到服务器上;第一个资源分段包包括游戏首个场景所需的配置文件、图片与音乐,保证玩家顺利进入第一个游戏场景进行游戏;(3)绕过手机操作系统默认的安装确认步骤;下载的手机游戏不在直接运行于手机操作系统之上,而是接管了手机操作系统对原生手机游戏生命周期的控制,包括游戏安装、游戏启动、游戏窗口的创建和销毁、游戏退出和游戏卸载;(4)代码加载;通过C++编程语言开发实现的游戏逻辑,在上述步骤(1)的时候已经通过二进制差分完成合并和还原;通过Java、Lua或JavaScript编程语言开发实现的游戏逻辑,则在编译阶段转为字节码之后,作为资源加载运行;(5)资源加载;通过函数注入的方式重定向了游戏资源加载函数,注入后的资源加载函数在手机上找不到所需资源时,则改从服务器请求并下载对应的分段包。...
【技术特征摘要】
1.一种手机游戏安装快速启动方法,其特征在于,包括以下步骤: (1)通过二进制差分方式合成每个游戏所需的定制版的游戏引擎;当用户从手机界面打开游戏时,首先检测标准版的游戏引擎是否存在,如果不存在则首先下载标准版引擎,如果标准版引擎已存在或下载完毕,则进一步下载游戏引擎的二进制差分补丁,最后从补丁和标准版引擎做二进制差分合成,合出游戏定制版引擎的完整二进制文件; (2)下载游戏的第一个资源分段包即能进入游戏;资源分段包由自动化拆分工具完成拆分之后,部署到服务器上;第一个资源分段包包括游戏首个场景所需的配置文件、图片与音乐,保证玩家顺利进入第一个游戏场景进行游戏; (3)绕过手机操作系统默认的安装确认步骤;下载的手机游戏不在直接运行于手机操作系统之上,而是接管了手机操作系统对原生手机游戏生命周期的控制...
【专利技术属性】
技术研发人员:王哲,陈建华,
申请(专利权)人:厦门雅基软件有限公司,
类型:发明
国别省市:福建;35
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。