android - 64K 限制在 Android 中没有意义
问题描述
这不是一个技术问题。
我问这个是因为我不明白如何避免这个(64k 限制)。
当一个“花哨”的应用程序不时地不断添加功能和特性时,它不是总是超过 64k 方法吗?或者这是否意味着那些“花哨”的应用程序总是multidex
-ed?
解决方案
64K 在现代时代确实没有任何意义,因为应用程序具有大量功能、先进和复杂的架构、大型库(尝试全套 Google Play 服务),以及上述库为我们做代码生成就像什么像 Dagger 这样的 DI 库可以做到,Dalvik 可执行文件有 64K 限制,因为这就是它为限制设计的限制是可以引用未定义的方法数量,所以我们选择多索引,默认情况下我会说所有调试风格一个应用程序应该具有多重索引,因为如果没有 proguard 截断和压缩并删除所有不必要的内容,我们最终会达到 64K 限制,但在生成发布变体时,我们经常会并且很可能保持在 64K 限制以下。
因此,对于您的问题,即使在 proguard 之后,任何超过 64K 限制的应用程序都必须被多索引,无论它是否喜欢。
推荐阅读
- asp.net-core - NToastNotify 不在异步帖子上显示消息
- python - 如何在 Python 中找到从周五开始的 2021 年的周数?
- javascript - React hooks api 链式调用有时会获取未定义的数据
- javascript - 如何读取文本文件并将特定行的值分配给 Javascript 中的变量?
- python - 用其他列 Pandas 中的值替换数据框列中的字符串
- django - Django 应用程序日志未在 Heroku 中显示
- python - 检测是否在 Python 中按下了任何按钮
- vue.js - VueJS 将“watch”路由传递给类组件
- javascript - 更改 TypeSript 类的“默认输出”
- angular - 通过在 ag 网格中的列中搜索来找出行索引