文档章节

命令行打包android工程

lightUp
 lightUp
发布于 2015/05/22 17:33
字数 1029
阅读 149
收藏 0


命令行打包android 工程实例:


//1,gen下生成R.java 文件,包名不会自动生成,需要提前mkdir
mae@MaydeMacBook-Pro ~/android-cmd/test $ aapt package -v -f -m -J ./gen -S res -M AndroidManifest.xml -I ~/Downloads/adt-bundle-mac-x86_64-20140702/sdk/platforms/android-20/android.jar


//2,编译所有java文件,包括R.java 
javac -bootclasspath ~/Downloads/adt-bundle-mac-x86_64-20140702/sdk/platforms/android-20/android.jar -cp libs/android-support-v4.jar -d bin gen/play/apilearn/R.java src/apiDemo/*.java src/com/jakewharton/disklrucache/*.java src/fragment/test/TestFragmentFullscreenActivity.java src/play/apilearn/*.java src/play/apilearn/util/SystemUiHider*.java src/stagger/*.java src/stagger/util/DynamicHeight*.java src/utils/*.java src/camera/*.java src/custom/view/*.java src/services/HelloIntentService.java src/test/*.java src/webview/ActivityWebView.java 

//3,打 jar包
mae@MaydeMacBook-Pro ~/android-cmd/test/bin $  jar cvf test.jar *

//4,生成dex , 如果支持多dex,可以选择生成多个;应该包依赖的jar库,这里忘记包含依赖包了, 运行时会报错
mae@MaydeMacBook-Pro ~/android-cmd/test $  dx --dex --output=bin/classes.dex bin/test.jar 

//5, 压缩资源文件
mae@MaydeMacBook-Pro ~/android-cmd/test $  aapt package -f -M AndroidManifest.xml -S res -I ~/Downloads/adt-bundle-mac-x86_64-20140702/sdk/platforms/android-20/android.jar -F bin/resources.ap_

//6, build apk 文件
mae@MaydeMacBook-Pro ~/android-cmd/test $  java -cp ~/Downloads/adt-bundle-mac-x86_64-20140702/sdk/tools/lib/sdklib.jar com.android.sdklib.build.ApkBuilderMain test.apk -v -u -z bin/resources.ap_  -f bin/classes.dex -rf src

THIS TOOL IS DEPRECATED. See --help for more information.

Packaging test.apk
bin/resources.ap_:
=> res/layout/activity_activity1.xml
=> res/layout/activity_camera_activity.xml
=> res/layout/activity_drawer_layout.xml
=> res/layout/activity_main.xml
=> res/layout/activity_pick_photo.xml
=> res/layout/activity_test_fragment_fullscreen.xml
=> res/layout/activity_view_page.xml
=> res/layout/activity_viewpager.xml
=> res/layout/activity_web_view.xml
=> res/layout/edit_text_with_image.xml
=> res/layout/fragment_blank.xml
=> res/layout/fragment_history.xml
=> res/layout/fragment_main.xml
=> res/layout/image_view.xml
=> res/layout/location_history.xml
=> res/layout/note_list_item_layout.xml
=> res/layout/note_load_more_view.xml
=> res/layout/test_download_manager.xml
=> res/layout/touchevent_activity.xml
=> res/layout/view_pager_with_background.xml
=> res/menu/activity1.xml
=> res/menu/activity_web_view.xml
=> res/menu/history.xml
=> res/menu/main.xml
=> res/menu/view_page.xml
=> res/menu/viewpager.xml
=> AndroidManifest.xml
=> resources.arsc
=> res/drawable-hdpi/ic_launcher.png
=> res/drawable-hdpi/icon.png
=> res/drawable-mdpi/banner_default.png
=> res/drawable-mdpi/ic_close.png
=> res/drawable-mdpi/ic_comment_gd_nor.png
=> res/drawable-mdpi/ic_launcher.png
=> res/drawable-mdpi/icon.png
=> res/drawable-xhdpi/ic_launcher.png
=> res/drawable-xhdpi/icon.png
=> res/drawable-xhdpi/laucn_01.png
=> res/drawable-xhdpi/laucn_02.png
=> res/drawable-xhdpi/laucn_03.png
=> res/drawable-xhdpi/laucn_04.png
=> res/drawable-xhdpi/launch_background.png
=> res/drawable-xxhdpi/ic_launcher.png
=> res/layout-land/fragment_history.xml
=> res/layout-land/location_history.xml

bin/classes.dex => classes.dex



//7, 生成签名证书
mae@MaydeMacBook-Pro ~/android-cmd/keystore $  keytool -genkey -alias zzw_android.keystore -keyalg RSA -validity 20000 -keystore zzw_android.keystore
输入密钥库口令:  
再次输入新口令: 
您的名字与姓氏是什么?
  [Unknown]:  zhang
您的组织单位名称是什么?
  [Unknown]:  
您的组织名称是什么?
  [Unknown]:  
您所在的城市或区域名称是什么?
  [Unknown]:  
您所在的省/市/自治区名称是什么?
  [Unknown]:  shandong
该单位的双字母国家/地区代码是什么?
  [Unknown]:  cn
CN=zhang, OU=Unknown, O=Unknown, L=Unknown, ST=shandong, C=cn是否正确?
  [否]:  Y

输入 <zzw_android.keystore> 的密钥口令
	(如果和密钥库口令相同, 按回车):  
mae@MaydeMacBook-Pro ~/android-cmd/keystore $  ls

zzw_android.keystore


//8, 对apk进行签名
mae@MaydeMacBook-Pro ~/android-cmd/test $  jarsigner -verbose -keystore ../keystore/zzw_android.keystore -signedjar signed_test.apk test.apk zzw_android.keystore
输入密钥库的密码短语: 
   正在添加: META-INF/MANIFEST.MF
   正在添加: META-INF/ZZW_ANDR.SF
   正在添加: META-INF/ZZW_ANDR.RSA
  正在签名: res/layout/activity_activity1.xml
  正在签名: res/layout/activity_camera_activity.xml
  正在签名: res/layout/activity_drawer_layout.xml
  正在签名: res/layout/activity_main.xml
  正在签名: res/layout/activity_pick_photo.xml
  正在签名: res/layout/activity_test_fragment_fullscreen.xml
  正在签名: res/layout/activity_view_page.xml
  正在签名: res/layout/activity_viewpager.xml
  正在签名: res/layout/activity_web_view.xml
  正在签名: res/layout/edit_text_with_image.xml
  正在签名: res/layout/fragment_blank.xml
  正在签名: res/layout/fragment_history.xml
  正在签名: res/layout/fragment_main.xml
  正在签名: res/layout/image_view.xml
  正在签名: res/layout/location_history.xml
  正在签名: res/layout/note_list_item_layout.xml
  正在签名: res/layout/note_load_more_view.xml
  正在签名: res/layout/test_download_manager.xml
  正在签名: res/layout/touchevent_activity.xml
  正在签名: res/layout/view_pager_with_background.xml
  正在签名: res/menu/activity1.xml
  正在签名: res/menu/activity_web_view.xml
  正在签名: res/menu/history.xml
  正在签名: res/menu/main.xml
  正在签名: res/menu/view_page.xml
  正在签名: res/menu/viewpager.xml
  正在签名: AndroidManifest.xml
  正在签名: resources.arsc
  正在签名: res/drawable-hdpi/ic_launcher.png
  正在签名: res/drawable-hdpi/icon.png
  正在签名: res/drawable-mdpi/banner_default.png
  正在签名: res/drawable-mdpi/ic_close.png
  正在签名: res/drawable-mdpi/ic_comment_gd_nor.png
  正在签名: res/drawable-mdpi/ic_launcher.png
  正在签名: res/drawable-mdpi/icon.png
  正在签名: res/drawable-xhdpi/ic_launcher.png
  正在签名: res/drawable-xhdpi/icon.png
  正在签名: res/drawable-xhdpi/laucn_01.png
  正在签名: res/drawable-xhdpi/laucn_02.png
  正在签名: res/drawable-xhdpi/laucn_03.png
  正在签名: res/drawable-xhdpi/laucn_04.png
  正在签名: res/drawable-xhdpi/launch_background.png
  正在签名: res/drawable-xxhdpi/ic_launcher.png
  正在签名: res/layout-land/fragment_history.xml
  正在签名: res/layout-land/location_history.xml
  正在签名: classes.dex
jar 已签名。

警告: 

未提供 -tsa 或 -tsacert, 此 jar 没有时间戳。如果没有时间戳, 则在签名者证书的到期日期 (2070-02-22) 或以后的任何撤销日期之后, 用户可能无法验证此 jar。


© 著作权归作者所有

上一篇: Camera 参数实例
下一篇: 矩阵原理
lightUp
粉丝 10
博文 242
码字总数 287936
作品 0
杭州
程序员
私信 提问
cordova3+sencha touch2.x 环境搭建

1.安装 nodejs 2.安装 cordova: npm install -g cordova 3.创建一个工程: cordova create MyApp com.example.MyApp MyApp 其中:第一个 MyApp是文件夹的名称; com.example.MyApp 是app i......

kisshua
2014/03/05
0
0
Android批量打包-如何一秒内打完几百个apk渠道包

在国内Android常用渠道可能多达几十个,如: 谷歌市场、腾讯应用宝、百度手机助手、91手机商城、360应用平台、豌豆荚、安卓市场、小米、魅族商店、oppo手机、联想乐商、中兴汇天地、华为、安...

SuShine
2017/10/23
0
0
Android的多渠道打包|SquirrelNote

系列文章: Android的反编译和代码混淆 Android的打包签名 [Android的多渠道打包 前言 本篇包括以下内容: 多渠道打包概述 友盟的多渠道打包 美团的多渠道打包 360的多渠道打包 多渠道打包概...

跳动的松鼠
2017/11/21
0
0
Cocos移植到Android-使用Eclipse交叉编译打包

如果对命令行望而生畏,我们可以借助于安装有ADT插件的Eclipse工具实现交叉编译。 使用Eclipse进行交叉编译,首先需要将要编译的工程导入到Eclipse的Workspace中,Workspace是多个工程的集合...

智捷课堂
2014/11/16
0
0
android studio gradle 配置修改

经过2年时间的研发,Google终于在近日正式发布了面向Android开发者的集成开发环境Android Studio 1.0(稳定版)。 未来计划 从Google的路线图可以看出,Android Studio未来会有3项改进: 1)...

习惯_搬砖
2014/12/10
0
1

没有更多内容

加载失败,请刷新页面

加载更多

定制专属二维码思路——实现【微信,QQ】扫码登录

效果演示 1.先在natapp实现外网映射(https://natapp.cn) 2.natapp.exe 3.生成token链接(先开启redis) //生成二维码token链接(生成二维码)http://p5gc9b.natappfree.cc/generateCode //...

须臾之余
24分钟前
5
0
android studio 使用CMAKE

原文地址 前言 之前,每次需要边写C++代码的时候,我的内心都是拒绝的。 1. 它没有代码提示!!!这意味着我们必须自己手动敲出所有的代码,对于一个新手来说,要一个字母都不错且大小写也要...

shzwork
27分钟前
0
0
volatile/CAS/atomicInteger/BlockQueue/线程交互/原子引用

import java.util.concurrent.ArrayBlockingQueue; import java.util.concurrent.BlockingQueue; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicInteger......

一只小青蛙
28分钟前
0
0
apache隐藏版本信息及设置网页缓存

实战:源码编译安装apache及调优技巧 实战环境: 生产环境中,部署了apache之后,我们应该从安全还是性能角度,在apache服务上线之前,对其做诸多的优化调试才行。 技巧1: 安装apache屏蔽a...

寰宇01
31分钟前
0
0
C 语言 二级指针操作文件 柔性数组使用

#include <stdio.h>#include <stdlib.h>#include <string.h>typedef struct _info* pInfo;struct _info{int line;int len;char data[0];}info;int getFil......

小张525
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部