iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 >Android开发优化之Apk瘦身优化指南
  • 800
分享到

Android开发优化之Apk瘦身优化指南

android开发apk优化Android 2022-06-07 20:06:16 800人浏览 泡泡鱼
摘要

目录了解APK结构Android Size Analyzer移除未使用的资源启用资源缩减 (不打包)动态库打包配置总结了解APK结构 在讨论如何缩减应用的大小之前,需要了解应用

目录

了解APK结构

Android Size Analyzer

移除未使用的资源

启用资源缩减 (不打包)

动态库打包配置

总结

了解APK结构

在讨论如何缩减应用的大小之前,需要了解应用APK的结构。APK文件是由一个Zip压缩文件组成,其中包含构成应用的所有文件。其中包括Java类文件、资源文件及已编译资源的文件。

APK 包含以下目录:

META-INF/ :包含 CERT.SF 和 CERT.RSA 签名文件,以及 MANIFEST.MF 清单文件。

assets/ :包含应用的资源;应用可以使用 AssetManager 对象检索这些资源。

res/ :包含未编译到 resources.arsc 中的资源(图片、音视频等)。

lib/ :包含特定于处理器软件层的已编译代码。此目录包含每种平台类型的子目录,如 armeabi 、armeabi-v7a 、 arm64-v8a 、 x86 、 x86_64 和 mips 。

APK 还包含以下文件。在这些文件中,只有 AndroidManifest.xml 是必需的。

resources.arsc :包含已编译的资源。此文件包含 res/values/ 文件夹的所有配置中的 XML 内容。打包工具会提取此 XML 内容,将其编译为二进制文件形式,并压缩内容。此内容包括语言字符串和样式,以及未直接包含在 resources.arsc 文件中的内容(例如布局文件和图片)的路径。

classes.dex :包含以 Dalvik/ART 虚拟机可理解的 DEX 文件格式编译的类。

AndroidManifest.xml :包含核心 Android 清单文件。此文件列出了应用的名称、版本、访问权限和引用的库文件。该文件使用 Android的二进制XML文件

Android Size Analyzer

Android Size Analyzer 工具可轻松地发现和实施多种缩减应用大小的策略。

首先在 Android Studio 中的插件市场下载安装 Android Size Analyzer 插件。安装插件后,从菜单栏中依次选择 Analyze > Analyze App Size,对当前项目运行应用大小分析。分析了项目后,系统会显示一个工具窗口,其中包含有关如何缩减应用大小的建议。

移除未使用的资源

APK瘦身关键就在一个字:删!没用的就删了。

启用资源缩减 (不打包)

如果在应用的 build.gradle 文件中启用了资源缩减: shrinkResources ,则 Gradle 在打包APK时可以自动忽略未使用资源。 资源缩减只有在与代码缩减: minifyEnabled 配合使用时才能发挥作用。在代码缩减器移除所有不使用的代码后,资源缩减器便可确定应用仍要使用的资源 。

android { 
    // Other settings 
    buildTypes { 
        release { 
            minifyEnabled true 
            shrinkResources true 
       proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
        } 
    } 
}    
动态库打包配置

so文件是由ndk编译出来的动态库,是 C/C++ 写的,所以不是跨平台的。ABI 是应用程序二进制接口简称(Application Binary Interface),定义了二进制文件(尤其是.so文件)如何运行在相应的系统平台上,从使用的指令集,内存对齐到可用的系统函数库。在Android 系统中,每一个CPU架构对应一个ABI,目前支持的有:armeabi-v7a,arm64- v8a,x86,x86_64。目前市面上手机设备基本上都是arm架构, armeabi-v7a 几乎能兼容所有设备。因此可以配置:

android{ 
    defaultConfig{ 
        ndk{
            abiFilters "armeabi-v7a" 
        } 
    }
 }

对于第三方服务,如百度地图、Bugly等会提供全平台的cpu架构。进行了上面的配置之后,表示只会把armeabi-v7a打包进入Apk。从而减少APK大小。

总结

到此这篇关于Android开发优化之Apk瘦身优化指南的文章就介绍到这了,更多相关Android Apk瘦身优化内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!


--结束END--

本文标题: Android开发优化之Apk瘦身优化指南

本文链接: https://www.lsjlt.com/news/30558.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Android开发优化之Apk怎么优化
    本文小编为大家详细介绍“Android开发优化之Apk怎么优化”,内容详细,步骤清晰,细节处理妥当,希望这篇“Android开发优化之Apk怎么优化”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。了解APK结构在讨...
    99+
    2023-06-30
  • win7系统瘦身怎么优化
    这篇文章主要介绍“win7系统瘦身怎么优化”,在日常操作中,相信很多人在win7系统瘦身怎么优化问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”win7系统瘦身怎么优化”的疑惑有所帮助!接下来,请跟着小编一起来...
    99+
    2023-07-01
  • win10如何对系统进行瘦身优化
    要对Windows 10系统进行瘦身优化,可以考虑以下几个方面:1. 卸载不必要的软件:打开控制面板,选择“程序”或“程序和功能”,...
    99+
    2023-10-21
    win10
  • MongoDb优化指南
    1、为什么选择MongoDB? 1、性能 在大数据时代中,大数据量的处理已经成了考量一个数据库最重要的原因之一。而MongoDB的一个主要目标就是尽可能的让数据库保持卓越的性能,这很大程度地决定了Mongo...
    99+
    2024-04-02
  • Android 高质量开发之崩溃优化
    前言开发人员碰到 APP 崩溃(闪退)什么办?不少人会说根据 Log,找到闪退的代码,捕获异常,“消化”掉了所有 Java 崩溃。至于程序是否会出现其他异常表现,那是上帝要管的事情。是的,这种方法对于紧急情况下不失为一种解决办法,但闪退的真...
    99+
    2023-06-04
  • Win10怎么优化系统 Win10系统瘦身技巧
    Windows10是目前最为主流的操作系统,也是微软目前最新的系统。我们在使用同一个系统的时候,有些用户因为不会维护、优化而导致电脑身技巧,包 Win10系统瘦身技巧: 一、卸载没用的软件 首先在Win10左下角的开始...
    99+
    2023-05-19
    win10 优化系统 系统瘦身 瘦身技巧
  • Windows XP优化指南
     动手之前,首先要确保以管理员的身份登录操作系统,因为普通用户身份下好些选项是无权使用的。接下来请激活清晰字体(ClearType),ClearType能使桌面的文字看起来更加清晰易读——这对于手...
    99+
    2023-05-23
    指南 Windows XP
  • 优化PHP开发体验:VSCode的必备指南
    1. 安装PHP扩展 为了增强VSCode中的PHP开发体验,安装PHP扩展至关重要。该扩展提供了广泛的功能,包括语法高亮、智能提示和代码补全。 可以通过转到扩展市场并搜索“PHP Intelephense”来安装扩展。 2. 配置...
    99+
    2024-03-05
    VSCode PHP 开发体验 优化 智能提示 代码补全 调试
  • PHP 性能优化:数据库优化指南
    PHP 性能优化:数据库优化指南 数据库的性能对 PHP 应用程序的整体性能至关重要。通过实施以下最佳实践,可以显著优化数据库性能: 1. 索引优化 创建必要的索引以加速查询。 确保...
    99+
    2024-05-11
    php 数据库优化
  • PHP 应用程序性能优化之数据库优化指南
    PHP 应用程序性能优化之数据库优化指南 前言 数据库是 PHP 应用程序的重要组成部分,它的性能直接影响应用程序的整体性能。优化数据库可以显著提高应用程序的速度和响应能力。本文将提供...
    99+
    2024-05-01
    php 数据库优化 mysql redis
  • Android性能优化之弱网优化详解
    目录弱网优化1、Serializable原理1.1 分析过程1.2 Serializable接口1.3 ObjectOutputStream1.4 序列化后二进制文件的一点解读1.5...
    99+
    2022-11-13
    Android 性能弱网优化 Android 弱网优化
  • 浅谈Android性能优化之内存优化
    目录1、Android内存管理机制1.1 Java内存分配模型1.2 Dalvik和ART介绍1.3 为什么要进行内存优化2、Java内存回收算法2.1判断Java中对象是否存活的算...
    99+
    2024-04-02
  • 详解Android性能优化之启动优化
    目录1、为什么要进行启动优化2、启动的分类2.1 冷启动2.2 热启动2.3 温启动3、优化方向4、启动时间的测量方式4.1 使用adb 命令方式(线下使用方便)4.2 手动打点方式...
    99+
    2024-04-02
  • Android性能优化之ViewPagers + Fragment缓存优化
    目录前言1 ViewPager懒加载优化1.1 ViewPager的缓存机制1.2 ViewPager懒加载方案2 ViewPager2与ViewPager的区别前言 大家看标题,可...
    99+
    2024-04-02
  • PHP开发缓存的性能测试与优化指南
    PHP开发缓存的性能测试与优化指南一、引言随着互联网的快速发展,Web应用程序的性能对于用户体验和客户满意度变得越来越重要。在PHP开发中,缓存技术被广泛应用于提高应用程序的性能和响应速度。然而,如何有效地测试和优化缓存的性能是一个关键问题...
    99+
    2023-11-07
    缓存 性能优化 PHP开发
  • Android 性能优化系列之bitmap图片优化
    背景 Android开发中,加载图片过多、过大很容易引起OutOfMemoryError异常,即我们常见的内存溢出。因为Android对单个应用施加内存限制,默认分配的内存只有几M(...
    99+
    2024-04-02
  • MySQL高性能优化指南
    作者:禅与计算机程序设计艺术 1.简介 随着互联网公司网站流量的逐渐增长,数据库服务器的负载也日益增加。如何提升MySQL数据库服务器的性能、节省硬件成本、提升网站的响应速度、节省运营成本是一个重要...
    99+
    2023-10-09
    自然语言处理 人工智能 语言模型 编程实践 开发语言 架构设计
  • JavaScript 代码优化终极指南:成为 JavaScript 优化大师
    JavaScript 是一种灵活且强大的语言,但如果编写不当,它可能会变得很慢。通过遵循一些简单的优化技巧,您可以显著提高 JavaScript 代码的速度和性能。 1. 使用严格模式 严格模式是一种 JavaScript 语法,可以帮助...
    99+
    2024-02-27
    JavaScript、代码优化、性能提升、代码压缩、代码规范
  • Android开发优化的技巧有哪些
    Android开发的优化技巧有很多,以下是一些常见的优化技巧: 减少内存使用:避免使用过多的内存,可以使用对象池、缓存和适当的内存...
    99+
    2023-10-24
    Android
  • PHP入门指南:代码优化
    PHP(Hypertext Preprocessor)是一种流行的服务器端脚本语言,被广泛应用于网站和Web应用程序的开发。由于PHP的易用性和灵活性,许多开发者都喜欢使用它来开发他们的Web应用程序。然而,为了确保PHP应用程序的性能和可...
    99+
    2023-05-20
    PHP 代码优化 入门指南
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作