Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

请问怎么实现对obb的热更? #10

Open
BossaNovaCC opened this issue Nov 19, 2019 · 10 comments
Open

请问怎么实现对obb的热更? #10

BossaNovaCC opened this issue Nov 19, 2019 · 10 comments

Comments

@BossaNovaCC
Copy link

如果使用obb的话 path获取到的目录是不对的 用obb的话要怎么去热更呢

@sisong
Copy link

sisong commented Nov 19, 2019

obb是一个固定路径的可读写文件,下载新版本替换不就行了

@chiuan
Copy link

chiuan commented Nov 20, 2019

obb是一个固定路径的可读写文件,下载新版本替换不就行了

你测试可行???

@noodle1983
Copy link
Owner

最简单的,把x86库删了,首包大小自己减减,其他全走热更,就不用obb了

@chiuan
Copy link

chiuan commented Nov 25, 2019

最简单的,把x86库删了,首包大小自己减减,其他全走热更,就不用obb了

你就是没出海吧。。母的不是减包。。
而是利用谷歌的obb下载启动减少更新。快。

@noodle1983
Copy link
Owner

唉,现在的人,不把别人踩一下都不舒服
我知道obb怎么回事, 我们项目上过台湾
也支持过网友用我说的方式上过线,可行吗, 也可行
用不用随你,我需要证明什么么, 好像也不需要

@chiuan
Copy link

chiuan commented Nov 25, 2019

唉,现在的人,不把别人踩一下都不舒服
我知道obb怎么回事, 我们项目上过台湾
也支持过网友用我说的方式上过线,可行吗, 也可行
用不用随你,我需要证明什么么, 好像也不需要

😔忽略前一句。
意思就是说现在出海,用户下载直接如果利用obb就完整包了啊。 就是不想走自己的热更再让用户下载。会影响转化率。

PS 没有说要证明什么,目前库是可行,只是看了下回复都不是回答命题。

@noodle1983
Copy link
Owner

好吧,回到之前的问题, so库有组装zip的逻辑
原来的方案是apk+patch+so = new apk
可能的solution是apk + obb + patch + so = new apk
如果Unity不支持一个new apk,就退化成(apk + apk_patch + so) + (obb + obb_patch)

印象中,我们当年obb也走了cdn,没走google的下载链接

@chiuan
Copy link

chiuan commented Nov 30, 2019

好吧,回到之前的问题, so库有组装zip的逻辑
原来的方案是apk+patch+so = new apk
可能的solution是apk + obb + patch + so = new apk
如果Unity不支持一个new apk,就退化成(apk + apk_patch + so) + (obb + obb_patch)

印象中,我们当年obb也走了cdn,没走google的下载链接

表示我没脑子思考了。。。只求有个具体的方案。。。demo

@chiuan
Copy link

chiuan commented Feb 29, 2020

好吧,回到之前的问题, so库有组装zip的逻辑
原来的方案是apk+patch+so = new apk
可能的solution是apk + obb + patch + so = new apk
如果Unity不支持一个new apk,就退化成(apk + apk_patch + so) + (obb + obb_patch)

印象中,我们当年obb也走了cdn,没走google的下载链接

public static string AndroidInstallFolder
        {
            get
            {
                //Get Activity then Context
                AndroidJavaClass unityPlayer = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
                AndroidJavaObject currentActivity = unityPlayer.GetStatic<AndroidJavaObject>("currentActivity");
                AndroidJavaObject unityContext = currentActivity.Call<AndroidJavaObject>("getApplicationContext");
                string p = unityContext.Call<string>("getPackageResourcePath");
                return p;
            }
        }

花了点时间研究,可以固定读取这个安装路径。就可以避免unity的接口获取的路径不一样。(因为热更下载ab可能是调用unity接口的话。设置给启动目录就行。

@azlanac
Copy link

azlanac commented Sep 17, 2021

我试了一下如果先打一个带obb的apk,然后再把apk里的so和assets提出来当作热更的资源,也可以热更成功的,改代码和改versioncode都可以,但是改resources资源就不行了

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants