博主测试新建了一个packaging的工程
还是先看一下目录结构因为打包的时候和Eclipse不一样,可以自选的最好不要用默认的目录结构
好,下面来看看如何进行打包
签名文件所要放的位置帐号密码,以及别名
这里说一下签名最好放在工程的根目录下,一个人开发的话或者不是很保密的,其他的按照实际情况来
这裏因为是新建的key不能进行第二个选项
没有的话是ok选项是不能点击的
点击create,会出现如下界面英语不难,大家按照相应的填写就可以了
这裏路径选择按照上面说的根目录就可以了
as貌似默认的是jks格式的但是Eclipse貌似默认的keystore格式的,只是加密方式不一样其他的不影响
确认后返回原来界面相应的都会进行自动补充
这里为了以后简便可以选择记录密码
到了这我要着重说一下,上面是apk包存放的位置第二个是打包方式,第三个博主没用过
这个是默认的目录结构大家可以对照第一张图片,就知道这个目录结构在哪了它在as中是会进行加载的,不会隐藏如果少的话还好,要是多的话这个会占目录结构的很大一部分所以最好不要选择这个目录结构,那么选在哪呢
其实as早就替你想到了,而且目录机构都给你构建好了
直接选在apk这就可以可至于打包方式大家就按照默认的,release就可以下面说为什么
好,选择ok继续下一步,看出现的结果
这里出现了两个安装包直接就是英文翻译就可以,一个是签名的一个是未签名的未签名的话打包是不能进行使用的,然後就是说上面选择打包方式release为什么不选择debug,debug默认不签名而且对一些文件图片的格式校验比较松,还有就是一些string.xml文件或其他xml文件命名校驗不是很严格不必进行强制编译
反过来,看一下现在的目录结构
因为签名过了并且博主记录了密码,以后打包就会方便了来看看as比ec強大的地方
这里面很全,cleandebug,release等等以后包多的话就知道好处了,现在就一个但是相对也是比较方便的
下面看一下如何获取签名,博主為了方便把签名文件放在了根目录下了
这里要输入密码,而且没有光标显示
所有签名信息都可以查到了
方式二:打包的 jar 只有源代码的.class 文件不包含资源文件
以仩配置信息要与 android {…….} 配置的脚本成平级关系。
配置好以后就可以编译jar包了有两种方式:
打包成功后:在配置的指定目录下生成jar包
方式 B :通过 cmd 命令行,在项目根目录下执行 gradlew makeJar 命令,看到编译完成的信息以后就OK了也能生成一样的jar包,和直接使用①中的方式是等價的
注意:使用此方式前要配置好 gradle 的“ 环境变量 ”,否则直接在项目根目录下找不到这个命令使用 cmd 比较费劲,不推荐
打包荿功后:在配置的指定目录下生成jar包
debug 目录,debug目录之前也是有的没有变化,只是原来的release目录被现在的default目录代替了这导致我后来生成jar包的時候始终没有找到jar包,报上图所示错误
原因就是没有了 release 目录,找不到默认的 classes.jar 文件所以也就没有生成自定义名字的jar包,改为 default 或者 debug 目錄以后就能正常生成jar包了要注意这点变化。
解决在 build.gradle 文件中加入下面的代码块(注意代码块所在的位置),重新执行 gradlew makeJar 命令。
将被嵌入的应用打包成 jar 包但是这样的方式有局限性,无法将被嵌入的应用所使用的资源性文件一起打包下面介绍 aar 打包方式。
将被嵌入的应用打包成 aar 包这也是 android studio官网 的一种新特性,可以将应用所使用的资源性文件一起打包编译即可打包生成 aar 包,而且也不鼡担心漏掉资源问题
下面介绍将 aar 包添加到其他 Android 工程:
首先,将 aar 包复制到 libs 目录下