Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/396.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/195.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在不再次发送所有APK的情况下更新我的应用程序?_Javascript_Android_Unity3d_App Store_Apk - Fatal编程技术网

Javascript 如何在不再次发送所有APK的情况下更新我的应用程序?

Javascript 如何在不再次发送所有APK的情况下更新我的应用程序?,javascript,android,unity3d,app-store,apk,Javascript,Android,Unity3d,App Store,Apk,每次我更新我的Android应用程序时,我都必须上传完整大小的APK,我注意到有些应用程序的大小是30MB,而更新大小只有10MB 如何做到这一点?一个选项是开始使用。在这种情况下,您可以显式地将特定内容(场景、模型、纹理等)指定在资源包文件中。根据分割内容的方式,如果只更改模型、纹理或添加新场景,则可以将更新保持在相当小的范围内。(有些游戏将内容分组到一个资产包中。有些游戏通过将每个资产放入一个单独的包中来提供更细粒度的控制) 但是,应用程序仍将包含所有代码和其他可执行内容。一旦更改脚本或添加

每次我更新我的Android应用程序时,我都必须上传完整大小的
APK
,我注意到有些应用程序的大小是30MB,而更新大小只有10MB


如何做到这一点?

一个选项是开始使用。在这种情况下,您可以显式地将特定内容(场景、模型、纹理等)指定在资源包文件中。根据分割内容的方式,如果只更改模型、纹理或添加新场景,则可以将更新保持在相当小的范围内。(有些游戏将内容分组到一个资产包中。有些游戏通过将每个资产放入一个单独的包中来提供更细粒度的控制)


但是,应用程序仍将包含所有代码和其他可执行内容。一旦更改脚本或添加新脚本,就需要更新应用程序。(对于这个问题,有一些棘手的解决办法确实有效,但在实践中可能会遇到更多的麻烦)

AssetBundle是一种方式,另一种方式是RESTful API

AB允许从构建中删除所有内容,只上载逻辑(脚本)。这是一些手机游戏中使用的东西,商店里的手机游戏小于30mb,但在第一次发布时需要额外下载5分钟。此时将下载所有纹理和模型等

第二种情况是RESTful API,使用json/xml。这是你轻松快速调整游戏的地方。 比如说,你的分析显示,人们因为过于努力而在某一特定层面上有所下降。 您可以将级别设计为读取文件以定义挑战。你在服务器上设置了这个值,文件在下一次运行时加载,玩家不会注意到级别更简单(也许只是运气好),但事实上你更新了游戏

实际上,Unity提供了一个新功能,但还不确定它的价值。

当您向资产绑定添加新逻辑(脚本)时,您必须发布新的应用程序。这是因为Unity处理脚本序列化的方式。基本上,脚本只是一个数据文件,在构建中引用了与之匹配的编译代码。如果编译后的代码丢失,则会出现异常。因此,如果您尝试上载一个AB,但脚本不在构建中,则不行,您必须发布一个新版本


我也想知道这一点