使用模块化编译缩小 apk 体积】的更多相关文章

libcocos2dlua.so编译出来有11M多,其中包含了很多不需要的模块,模块化编译,把不需要用到的模块弄成0,体积就小了. 如: 修改D:\codeide\sDiShu2formm\frameworks\runtime-src\proj.android\jni\Application.mk为 ifeq ($(NDK_DEBUG),) APP_CPPFLAGS += -DCOCOS2D_DEBUG= APP_OPTIM := debug else APP_CPPFLAGS += -DNDE…
转载请注明出处: http://www.cnblogs.com/soaringEveryday/p/5254520.html 随着Android移动开发的需求越来越复杂,我们不可避免的遇到发布出去的apk体积越来越大的问题,目前超过10MB.20MB的apk已经是很常见的事情了,但是依然能够看到一些apk的体积控制的很小.apk体积增大源于: 新需求不断的提出 需要支持高分辨率的屏幕而加入了高分图片 依赖了更多的第三方库 本文将从我自己的经历项目中探讨如何有效减小apk的体积.减小Apk体积是一…
C语言模块化编译介绍 模块化编程的概念 所谓模块化变成(多文件开发),就是多文件(.c文件)编程,一个.c文件和一个.h文件可以被称为一个模块. 头文件开发的注意事项: 1)头文件中可以和C程序一样引用其它头文件,可以写预处理块,但不要写具体的语句. 2 可以声明函数,但不可以定义函数 3 可以声明常量,但不可以定义变量 4)可以“定义”一个宏函数.注意:宏函数很象函数,但却不是函数.其实还是一个申明. 5)结构的定义.自定义数据类型一般也放在头文件中. 6)多文件编程时,只能有一个文件包含 m…
新建一个Android工程,默认编译会生成一个叫app-debug.apk或者叫app-release.apk文件,说实话,单纯看文件名,我都不到任何有用的信息,我希望输出的文件名是这样的: 模块名-渠道名-版本号-版本名称-包名-编译时间.apk 当然,这只是举一个例子,可能不需要那么长,具体需要什么就加什么. 实现 通过build.gradle来做,具体看代码 apply plugin: 'com.android.application' def releaseTime() { return…
本文章麦子学院跟小伙伴们详细的分享一下关于Android Ant命令行编译和APK签名详解一些实现方法,这是一个朋友在自己做安卓开发时写的,希望对大家会有所帮助呀. 最近在做Android开发时,需要引用第三方的代码进项目,一般情况下,直接在Eclipse下设置需要导入的代码的编译输出为library即可,但是很多代码在Eclipse下编译会出现很多莫名其妙的错误.因而只能使用命令行方式对代码进行编译.具体方法如下: 1.安装编译用的Java,安装Android Platform-tools,安…
怎么逆向工程对Android Apk 进行反编译 google Android开发是开源的,开发过程中有些时候会遇到一些功能,自己不知道该怎么做,然而别的软件里面已经有了,这个时候可以采用反编译的方式,解开其他的程序,来了解一些它 的做法,同时啊,还可以借鉴别人的软件结构,资源文件:作为一个开发者,你可能会很想知道这些效果界面是怎么去实现的,这时,你便可以对改应用的APK进行反编译查看.此方式主要目的是为了促进开发者学习,借鉴好的代码,提升自我开发水平.请勿去破解人家的软件或其他操作 反编译工具…
android在ubuntu中编译为.apk文件 今天我在ubuntu环境之下将android程序编译为.apk文件,特将其过程写下来: 1. 在windows环境下使用MyEclipse编辑好android工程,我的工程名为:TestAndroid: 2. 在ubuntu中搭建好android环境(略),并设置好环境变量: 设置环境变量过程如下: vim ~/.bashrc 在.bashrc中新增或整合PATH变量,如下 #java 程序开发/运行的一些环境变量 JAVA_HOME=/usr/…
1.所需要的工具 1)apktool,功能:反编译出apk所需要的资源文件和布局设置文件等, 下载地址:https://code.google.com/p/android-apktool/downloads/list 需要下载apktool1.5.2.tar.bz2 和apktool-install-Linux-r05-ibot.tar.bz2 这两个文件,并把解压后的文件放在同一个文件夹中. 2)dex2jar,功能:反编译出jar文件,即apk的源程序文件的字节码, 下载地址:http://…
一.安装node.js 二.安装Ionic2 npm install -g ionic (安装最新版本) ionic -v //查看版本号(是否安装成功) npm uninstall -g ionic(卸载) npm install -g ionic@3.9.2(安装自定版本) 三.安装Cordova npm install -g cordova cordova -v //查看版本号 四.安装JDK 配置环境变量 javac -version //查看版本 五.安装Android SDK 配置环…
1.下载apktool 点击这里下载 ,里面有两个文件,一个是.jar,一个是自己写的脚本.sh 注:最新的apktool.jar 文件可以点击这里下载 .sh脚本是自写脚本可不用更新最新,下载的jar文件名必须是apktool.jar,不能是apktool-2.0.1.jar这样的形式 2.将shell脚本”apktool.sh”和”apktool.jar”放到 “/usr/local/bin”目录下 3.增加这两个文件可执行权限,chmod a+x file 在命令提示符下执行:cd /us…
内核在编译的时候,可以支持单独模块化编译,只需要一个小小的Makefile即可搞定. 步骤如下: 1.在任意位置创建目录 vim Makefile 2.在Makefile中添加如下代码(我的kernel目录是/opt/kernel_xilinx_v4.4): obj-m += my_drv.o all: make -C /opt/kernel_xilinx_v4. SUBDIRS=$(PWD) modules clean: make -C /opt/kernel_xilinx_v4. SUBDI…
集成第三方so和jar包 include $(CLEAR_VARS) #jar包编译            LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES :=securitysdk:libs/hello.jar #64和32系统选择不同的库 ifeq (arm64, $(strip $(TARGET_ARCH)))     LOCAL_PREBUILT_LIBS := libssl:libs/arm64-v8a/libssl.so     LOCAL_PREBUILT…
一.使用apktool 将 apk反编译生成程序的源代码和图片.XML配置.语言资源等文件 具体步骤: (1)下载反编译工具包:apktool 官方的打不开 http://apktool.shoujifans.com/2014/12/21.html 里有网盘下载 需要下载下边两个文件 apktool1.5.2.tar.bz2 apktool-install-linux-r05-ibot.tar.bz2 (2)将下载好的两个包解压到“同一个”文件夹apktool里面. 注意是同一个 (3)在命令行…
本文具体介绍了怎样反编译一个未被混淆过的Android APK,改动smali字节码后,再回编译成APK并更新签名,使之可正常安装.破译后的apk不管输入什么样的username和password都能够成功进入到第二个Activity. 有时难免要反编译一个APK.改动当中的若干关键推断点,然后再回编译成一个全新的可用的apk,这全然是可实现的. 若要完毕上述工作,须要以下工具,杂家后面会把下载链接也附上.这些软件截止本文公布时,经过杂家确认都是最新的版本号. 1.APK-Multi-Toolv…
cocos2d-x 3.0 中.假设你须要使用CocosStudio.Extensions扩展库 等等.都须要自己手动加入. 加入过程例如以下:(比方说如今我要加入libExtensions,libCocosStudio , libGUI) 1.加入附加项目 右击解决方式--->加入现有项目--->加入:项目文件夹\cocos2d\extensions\proj.win32\libExtensions.然后你会发现左边多了一个libExtensions扩展库 右击解决方式--->加入现有…
由于Jenkins 装在centos环境下,想实现Android程序的编译,只能通过gradle 命令去打包版本apk,以下记录了如何在centos下使用gradle 打包apk 一.安装 gradle 需要服务器上安装过jdk 和sdk,故而要先安装jdk和sdk 1.jdk安装(jdk需要1.8) 下载地址:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 选择对应版本进行…
准备工作:安装ApkTool.dex2jar.JD-GUI 安装ApkTool 1.下载ApkTool.大家可以从 https://ibotpeaches.github.io/Apktool/install/ 上下载ApkTool 2.安装ApkTool (1)将下载好的apktool文件与apktool_2.4.0.jar文件准备好,并将apktool_2.4.0.jar更名为apktool.jar: (2)将apktool.jar与apktool移动到/usr/local/bin目录下(可以…
最近在用AndroidStudio开发一个小计算器,代码加起来还不到200行.但是遇到一个问题,导出的APK文件大小竟然达到了1034K.这不科学,于是就自己动手精简APK.下面我们大家一起学习怎么缩小一个APK的大小,以hello world为例. 新建工程,最低版本支持2.3.3,其他默认.工程目录是这样的: 我们直接签名导出APK,看看大小如何,1M啊!( ⊙ o ⊙ ) 什么鬼: 怎么可能呢是吧?都还没有写代码呢,就已经1M了.检查一下代码,我们会发现,工程里自动添加了V7的向下兼容包,…
安卓程序是通过java语言进行编写的,可以很容易进行反编译.很多apk文件被反编译后再二次打包,就成了自己的产品,很是流氓.下面我们来看看如何进行apk的反编译,以及常用的防反编译手段. 一.反编译APK文件 1.第一步  将apk文件在pc上进行解压,解压后拷贝classes.dex文件. 2.第二步  下载并解压dex2jar工具,打开命令行并进入所在目录,执行命令:d2j-dex2jar.bat classes.dex D:\jarpath,会在D:\jarpath目录下生成classed…
使得wp_options表变得庞大的重要原因:无用的RSS Feed Cache.如果你在wp_options表中发现了大量option_name包含“_transient”的数据,那就是它没跑了.先说说这玩意儿是干嘛用的,这玩意就是WordPress程序中引入RSSFeed后产生的缓存.正常的WordPress使用过程中,会不断产生这些数据,久而久之,就非常之庞大了.这时我们就要定时清理一下,优化也很简单,在PHPMyAdmin中的wp_options,执行下面mysql语句即可: DELET…
所需要的工具 http://pan.baidu.com/disk/home#path=%252Fandroid%252Fdecompile%252Fapktool-all apktool用于将资源文件或者原始资源文件反编译  -->res   assets 文件夹 apktool d XXX       XXX表示apk文件   在当前目录下生产对应的目录 d2j-dex2jar.sh XXX     XXX表示apk文件解压然后 classes.dex 则会生成classes.jar   然后…
我们经常会在如下的情况使用反编译 1.看到别人应用中的酷炫功能,想知道是如何实现的 2.别人应用的素材排版好漂亮,想套用模仿   百度一下就已经有一大堆反编译的教程了,我还是坚持学习记录一下.   Android导出的APK其实与普通的压缩包没啥区别,我们随意用一个压缩工具打开,我这里用的是WinRAR,即可看到APK的庐山真面目 其中,classes.dex即为整个APK所用到的类. .dex文件简介 .dex文件是虚拟机可执行格式(Dalvik Executable (.dex/.odex)…
目录 简述 压缩和解压代码 压缩代码 解压代码 将二进制文件生成C数组程序代码 简述 有一个需求是这样的,写的一个程序内置了一个很大的文件(实际就是抓取epsg.io的内容里面的epsg.io.json),这个文件筛选缩减后还有12MB,如果直接内置到程序中,编译后的程序就很大了. 因为这个程序是一个动态库,而使用upx压缩过的动态库有时候会有一些异常问题出现,所以不考虑使用upx进行压缩. 看到了quicklz后,感觉这是个好东西,于是就用这个来进行压缩,把压缩后的数据写入程序中,使用前进行解…
1.工具准备 工具可以网上搜索下载新版本,也可以从这里Download:https://github.com/FlymeOS/tools/blob/lollipop-5.1/reverses/apktool.jar 2.准备app 将需要编译的app与apktool.jar放在一个目录下即可开始编译 3.常用命令 常用命令如下: (1)反编译 APK java -jar apktool.jar d *.apk -o out 其中 *.apk 是被解包的 APK 文件名, out 是输出目录名称…
什么是反编译 我们知道,Android的程序打包后会生成一个APK文件,这个文件可以直接安装到任何Android手机上,因此,反编译就是对这个APK进行反编译.Android的反编译分成两个部分: 一个是对 代码 反编译,也就是java文件的反编译. 一个是对 资源 反编译,也就是res文件的反编译. 反编译结构图 反编译并查看java代码的工具: dex2jar: 把dex文件转成jar文件下载地址: https://sourceforge.net/projects/dex2jar/ jd-g…
原文地址:http://www.2cto.com/kf/200908/40970.html vc通过设置参数来自定义编译方式.主要用到的技巧有: 一,使用release版而不用debug版编译 使用debug版编译会生成许多垃圾信息.我们先使用默认的设置进行一下编译.可以看到编译后生成的文件有152k之巨.使用release版编译具体方法是:在"build(编译)--->Configuration(配置)"中将"Win32 debug"移去,然后再次编译可以发…
目录: 1. 入门 2. 编译 3. 问题 4. 总结 5. 参考 ------------------------------------------------------------------------------ |*以下是政委*| ------------------------------------------------------------------------------ 之前用版本2.2.5打包,直接import到eclipse之后,运行就会自动编译,但是在3.2版…
1.谷歌提供的工具:android-classyshark 下载地址:https://github.com/google/android-classyshark/releases,下载下来之后是一个可执行的jar文件,win下或者mac下都只要双击即可运行. 功能:带有界面,一键反编译Apk工具,直接打开Apk文件,就可以看到Apk中所有的文件结构,甚至还集成了dex文件查看,java代码查看,方法数分析.导入混淆mapping文件等一系列工具.谷歌推出这个工具的目的是为了让我们开发者更清楚的了…
ANT —— Apache Ant is a Java library and command-line tool that help building software. 1. 部署ANT的使用环境 ① 登录ant的官方网站http://ant.apache.org/bindownload.cgi,下载apache-ant-1.10.1-bin.zip.这是ant要使用的类库. ② 在windows环境中,主要配置两个环境ant_home和path ANT_HOME :apache-ant-1…
最近发现了一个叫做pngquant的工具,可以有效的压缩资源文件中的png文件,从而减小发布的apk的大小.我发现这个工具有两个特点: 1. 真无损,压缩后重新运行了我的app发现是没有任何区别的 2. 使用简便,一个命令行即可 3. 对于.9图片也可以照样压缩切不报错 具体对于这个工具的介绍就不多说了,应该是用了某种比较好的算法来实现无损压缩或者最大限度的达到同样的效果,具体可以参考官网: https://pngquant.org/http://i.cnblogs.com/EditPosts.…