我的 APK 是 118MB ......我只需要一些关于如何减小它的大小的想法吗?
Posted
技术标签:
【中文标题】我的 APK 是 118MB ......我只需要一些关于如何减小它的大小的想法吗?【英文标题】:My APK is 118MB... I just need some ideas on how to reduce it's size? 【发布时间】:2012-02-12 09:20:53 【问题描述】:我正在开发一个 android 应用程序,其中包含一个可以查看的大型视频库...... res/raw 文件夹中大约有 30 个视频,我猜这就是导致 apk 文件大小巨大的原因?
有没有人有什么减少它的小窍门?
谢谢!
【问题讨论】:
【参考方案1】:您应该将文件作为在线内容提供。应用程序第一次启动时,它会检查所有文件的可用性。如果它们不存在,则开始下载,或者提示用户查找数据连接。可能会警告用户这是半大的,因此计划中的用户可以使用 WiFi。
【讨论】:
我应该如何将视频作为在线内容提供?如果它们不存在,我应该将它们上传到某个地方并让它在启动时单独下载每个文件吗?我不完全确定如何做你上面提到的哈哈,谢谢! 您应该首先找到一个位置(网络服务器或其他东西)。可以说http://yourlocation.com/yourfiles/
。然后您可以检查您为设备上的丢失文件定义的文件列表:如果有丢失的文件,您可以在代码中下载它。
好的,我想我明白了。我会找到它并尝试编写一个测试程序来下载java中的文件。谢谢大佬!
所以只是另一个问题,我写了一个下载文件的函数,但我唯一关心的是实际路径。我可以将它命名为 sdcard/videoz/x.mp4 吗?我假设根路径总是 sdcard。
看看这个:developer.android.com/guide/topics/data/data-storage.html。我会先尝试是否有外部存储,然后获取目录(请参阅该链接,有方法)。如果不可用,请使用内部存储,您也会从系统中获得一个目录。该链接中有示例。【参考方案2】:
您的选择有点有限:
-
以较低质量或更紧凑的编码对视频进行编码
从 .apk 文件中删除视频,并让应用根据需要从网站下载它们
从 .apk 文件中删除视频并重新设计您的应用以不使用它们
【讨论】:
【参考方案3】:您可以像 Gameloft 处理 500mb+ 游戏一样:赠送/出售 200k 或类似的非常轻量级的下载程序,然后下载所有资产。这很常见,用户理解这一点。
请记住,仅限手机的在线内容很难销售。
【讨论】:
【参考方案4】:您可以使用 Google 扩展文件 http://developer.android.com/google/play/expansion-files.html
【讨论】:
以上是关于我的 APK 是 118MB ......我只需要一些关于如何减小它的大小的想法吗?的主要内容,如果未能解决你的问题,请参考以下文章
您需要将 APK 文件大小减少到 100MB 或使用 APK 扩展文件 [重复]
Android:构建一个 APK 几乎是嵌入视频文件大小的两倍?
如果我的 Android APK Bundle 是 45 MB,那么当它进入 Google Play 商店时,这就是我的应用程序的大小吗?