-
Notifications
You must be signed in to change notification settings - Fork 740
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
Chromium升级内核 #21
Comments
@novono 多谢参与。目前还只能使用旧版移植方案去做,新版的还在尝试。如果你有问题就把具体的问题贴出来一起解决。如果涉及到文件或类找不到,一般是临时文件,在out目录下搜索即可。 |
目前检索了out目录下的文件,下面这些jar应该是缺少的 |
@novono 首先确认下是整个编译出了chrome.apk,然后在确认这些jar包是否是真的需要的,如果引用的类没什么作用就去除,再不行就在整个chromium工程里面搜索试试 |
OK,现在我是在用https://chromium.googlesource.com/chromium/src.git/+/master/docs/android_studio.md 我也依据这个工程的思想找下依赖吧~ 谢谢~ |
@novono 加油! 👍 |
@novono 最近代码已经升级到55内核,基于这个版本升级到56版本应该简单些,有问题随时沟通 |
您好,我基于54和您的55版本去构建56,但是都会报“E/cr_tabmodel: State file does not exist.”的错误,然后apk就会崩溃。我查看是在TabPersistentStore.java中的startFetchTabListTask中报的,也就是"/data/data/org.chromium.chrome.browser/app_tabs/0/tab_state0"这个文件不存在造成的。如果我用我的工程编出来的apk直接覆盖您的工程编出来的apk,就没有上述问题,查看tab_state0那个文件也在,应该是在覆盖的时候这个文件没有被清除掉。我想请问您有遇到这类问题吗? |
@rkshuai 升级版本的时候最好只采用一个版本去构建升级,或者基于54或者基于55,chromium文件太多容易造成混乱,如果class找不到就去chromium源码和out目录下去搜索,如果这样还找不到就解压生成的jar看看是否在里面。 |
嗯,我是指我在54和55上分别做了升级,但是都会报“E/cr_tabmodel: State file does not exist.”,请问您那边有这样的问题吗? |
@rkshuai 没有 |
找到问题的原因了,56代码已经抽出,感谢你的贡献。 |
棒👍,如果可以记得提交PR |
你编译出来的chromium能播放视频吗? |
@rkshuai 目前播放视频还有点问题 |
哈哈,现在视频能播放了。 |
@rkshuai 怎么解决的?直接升到了56内核吗?记得提交代码😃 |
不是的,和哪个内核版本没关系,设置一些编译选项就行了 |
@rkshuai 好,尽快把解决方案和代码提交下👍 |
@rkshuai请问如何才能解决视频能播放的问题? |
@JackyAndroid 非常感谢~~~ |
@novono 好的,如果有比较好的依赖方案和瘦身记得提交出来,分享给大家👍 |
好咧~ |
@rkshuai 你好,我在 58 版本上遇到了相同的错误
请问你怎么解决的? |
已解决,新版多了个 webapk1.dex 文件,放到 assets 下即可 |
@rkshuai 还是有问题 😢
第一次进入浏览器能正常打开网页,后面几次就不行了
|
@kuoruan 我最后发现不是这个问题,是资源文件的问题。 |
@hulpi 在args.gn中添加 |
@kuoruan 在assets中添加en-US.pak和zh-CN.pak两个资源文件,我是针对56版本的(并不是针对E/cr_tabmodel: State file does not exist.,这句基本上每个版本都会打印,但不影响程序运行) |
@rkshuai 问题已解决,将 snapshot_blob.bin 改名为 snapshot_blob_32.bin,然后改一下 ResourceExtractor.java 即可。 |
@kuoruan 如果解决了相关问题,欢迎提交PR,这样项目才会越来越稳定 |
@JackyAndroid 我没有用生成的 Jar 包,全部都是从 src 里边拷贝的 java 源文件。 |
@kuoruan 没关系,我也建议全部使用源码替换jar,然后根据各个的模块的resource放入相应的源码,这样是最好的方式,不过现在我这边还没多余时间去重构 |
@kuoruan 👍 我也是分析ResourceExtractor.java和ResourceBundle解决的问题,这些文件决定加载资源文件的方式,Chromium版本升级的时候这个文件通常会发生变化。所以要针对不同版本采用不同的处理方式。 |
难道需要手动copy代码创建工程吗?看样子很难呢,我以为这个方法可以直接导出项目😭️ https://chromium.googlesource.com/chromium/src/+/master/docs/android_studio.md |
@kuoruan @JackyAndroid 两位能不能分享一下怎么用源码创建这个工程吗?这个版本太老了,我想创建一个最新版本的。 |
最近的稳定版本是56.0.2924.87,然后我看到了这个项目,也想尝试将此迁移为最新的稳定版本
但是发现有很多文件位置和依赖都有较大修改,有些库也被切割
所以想咨询一下作者,是否有更加详细的理论操作文档?想加入到移植中来
The text was updated successfully, but these errors were encountered: