Android Zipalign工具优化Android APK应用
作者:lqh 发布时间:2021-09-15 13:16:27
生成的Android应用APK文件最好进行优化,因为APK包的本质是一个zip压缩文档,经过优化能使包内未压缩的数据有序的排列,从而减少应用程序运行时的内存消耗。我们可以使用Zipalign工具进行APK优化。
据Android官方网站的说明,Zipalign是一款重要的优化APK应用程序的工具。
多数软件开发商在正式推出其Android应用程序,都使用Zipalign工具优化APK包。但是,仍然有一些应用程序需要我们自己动手进行Zipalign优化,例如一些个人开发的软件、一些破解版的软件。
在这里我主要介绍使用adb直接进行apk优化以及在已经Root的Android手机端进行apk优化这两种方法。
正式开始时请在网上下载二进制文件和脚本代码:zipalign.zip,解压后产生一个二进制文件zipalign,一个可执行脚本zipalign_apks。
方法一:adb法(需要电脑已装有Android SDK)
1、安装代码
adb shell mount -o remount,rw /system
adb push zipalign /system/bin
adb push zipalign_apks /system/sd/zipalign_apks.sh
adb shell chmod 755 /system/bin/zipalign /system/sd/zipalign_apks.sh
adb shell mount -o remount,ro /system
2、运行脚本代码
adb shell sh /system/sd/zipalign_apks.sh
或者在手机超级终端运行
su
sh /system/sd/zipalign_apks.sh
方法二:使用Root Explorer
Root Explorer(简称RE)是一款强大的root管理器,它可以对系统区进行读写操作。
首先用RE将zipalign复制到/system/bin,设置权限为rwxr-xr-x,如下图所示:
接着将zipalign_apks复制到/system/sd/或者其他地方,将其改名为zipalign_apks.sh,设置权限与zipalign一样。
然后运行zipalign_apks.sh,方法是用RE单击这个文件,跳出对话框,选择Execute。
运行后,就会在/data/生成一日志文件zipalign.log,查看日志文档你就可以发现哪些应用程序被优化。
猜你喜欢
- 一. * 搭建及配置1 . * 简介 * 是架设在局域网的一种特殊的远程仓库,目的是代理远程仓库及部署第三方构件。有了 * 之后,当 Maven
- java 中HashCode重复的可能性今天有同事提议用String的hashcode得到int类型作为主键。其实hashcode重复的可能
- 1.利用 “+”(加号)运算符:string str = “Hello”+ “World”; console.WriteLine(str);
- android开机自动运行APP实现方式其实很简单。在android系统运行时,会发出“android.intent.action.BOOT
- 简单的说下实现来电秀的大概原理流程:首先通过监听来电状态,通过拦截来电然后在窗口弹出一层系统级别的弹窗,这层弹窗即是来电秀。先来两张效果图:
- 概述在一个程序执行的过程中,各条语句的执行顺序对程序的结果是有直接影响的。也就是说,程序的流程对运行结果有直接的影响。所以,我们必须清楚每条
- Springboot获取上下文ApplicationContext在项目中遇到了一个场景,就是通过获得上下文然后获取特定的bean。在此遇到
- 1、Handle,MessageQueue,Message类图Handle: 处理消息,并提供一系列函数帮忙我们创建消息和插入消息到消息队列
- 文件流输出文件名中文不显示response返回文件流 用response.setHeader(“Content-disp
- java 中 * 机制的实例讲解在学习Spring的时候,我们知道Spring主要有两大思想,一个是IoC,另一个就是AOP,对于IoC,
- 1、什么是Callback,什么时候需要使用Callbackcallback是回调的意思,一般我们需要2个类需要相互掉用,一个类把数据动态传
- 一、ArrayList简介在集合框架中,ArrayList是一个普通的类,实现了List接口,具体框架图如下:ArrayList底层是一段连
- 本文实例讲述了C#遍历指定目录下所有文件的方法。分享给大家供大家参考。具体分析如下:先通过DirectoryInfo打开指定的目录,然后通过
- 什么是 MyBatis ?MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有
- 这几天恰好和朋友谈起了递归,忽然发现不少朋友对于“尾递归”的概念比较模糊,网上搜索一番也没有发现讲解地完整详细的资料,于是写了这么一篇文章,
- SpringBoot使用过滤器、 * 和 * 一、SpringBoot使用过滤器Spring boot过滤器的使用(两种方式)使用sprin
- 在选择排序中,从第一个元素开始,依次遍历数组中的元素,找出当前遍历元素之后的最小元素,与当前遍历元素交换位置,依此类推,是一种由前往后的排序
- 本文实例为大家分享了Android实现图片点击放大的具体代码,供大家参考,具体内容如下在我的项目中,有点击图片banner后放大浏览的功能。
- 什么是响应式简单来说当数据发生变化时,对数据有依赖的代码会重新执行。例如在Vue中,当我们的数据发生改变,界面上对该数据的引用组件会重新渲染
- 本文实例为大家分享了Android联系人字母排序的具体代码,供大家参考,具体内容如下实现思路:首先说下布局,整个是一个相对布局,最下面是一个