`
iwebcode
  • 浏览: 2072467 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

Android 命令行手动编译打包过程图

 
阅读更多

Android 命令行手动编译打包过程图

【详细步骤】:

Step1:使用aapt生成R.java类文件。
例:

F:/explorer/android-sdk-windows2.2/tools>f:/explorer/android-sdk-windows2.2/platforms/android-3/tools/aapt.exe package -f -m -J F:/explorer/AndroidByread/gen -S res -I f:/explorer/android-sdk-windows2.2/platforms/android-3/android.jar -M AndroidManifest.xml
其中 -f -m -J F:/explorer/AndroidByread/gen 代表按覆盖的形式在gen目录下生成带包路径的R.java,-S res指定资源文件 ,-I f:/explorer/android-sdk-windows2.2/platforms/android-3/android.jar 指定使用的android类,-M AndroidManifest.xml指定程序的配置文件

aapt Usage:

Step2:使用android SDK提供的aidl.exe把.aidl转成.java文件:
usage: aidl OPTIONS INPUT [OUTPUT]
aidl --preprocess OUTPUT INPUT...

OPTIONS:
-I<DIR> search path for import statements.
-d<FILE> generate dependency file.
-p<FILE> file created by --preprocess to import.
-o<FOLDER> base output folder for generated files.
-b fail when trying to compile a parcelable.

INPUT:
An aidl interface file.

OUTPUT:
The generated interface files.

Step3:编译.java类文件生成class文件。
例:F:/explorer/AndroidByread>javac -encoding GB18030 -target 1.5 -bootclasspath F:/explorer/android-sdk-windows2.2/platforms/android-3/android.jar -d bin src/com/byread/reader/*.java gen/com/byread/reader/R.java

Step4:使用android SDK提供的dx.bat命令行脚本生成classes.dex文件。

例:
F:/explorer/AndroidByread>F:/explorer/android-sdk-windows2.2/platforms/android-3/tools/dx.bat --dex --output=F:/explorer/AndroidByread/bin/classes.dex f:/explorer/AndroidByread/bin/classes
其中classes.dex为生成的目标文件,f:/explorer/AndroidByread/bin/classes为class文件所在目录

Step5:使用Android SDK提供的aapt.exe生成资源包文件(包括res、assets、androidmanifest.xml等)。
F:/explorer/AndroidByread>F:/explorer/android-sdk-windows2.2/platforms/android-3/tools/aapt.exe package -f -M AndroidManifest.xml -S res -A assets -I F:/explorer/android-sdk-windows2.2/platforms/android-3/android.jar -F bin/byreadreader
将AndroidManifest.xml,res和assets文件夹中的资源文件打包生成byreadreader,用法参见1

Step6:生成未签名的apk安装文件:
apkbuilder ${output.apk.file} -u -z ${packagedresource.file} -f ${dex.file} -rf ${source.dir} -rj ${libraries.dir}

例:
F:/explorer/AndroidByread>f:/explorer/android-sdk-windows2.2/tools/apkbuilder.bat f:/explorer/byreadreader.apk –v -u -z f:/explorer/AndroidByread/bin/byreadreader -f f:/explorer/AndroidByread/bin/class.dex -rf F:/explorer/AndroidByread/src
其中f:/explorer/byreadreader.apk为生成的apk ,-z f:/explorer/AndroidByread/bin/byreadreader为资源包,f:/explorer/AndroidByread/bin/class.dex为类文件包


Step7:使用jdk的jarsigner对未签名的包进行apk签名:
use jarsigner
jarsigner -keystore ${keystore} -storepass ${keystore.password} -keypass ${keypass} -signedjar ${signed.apkfile} ${unsigned.apkfile} ${keyalias}
例如:
F:/explorer/android-sdk-windows2.2/tools>jarsigner –keystore f:/explorer/eclipse3.5/bbyread.keystore -storepass byread002 -keypass byread002 -signedjar f:/explorer/byread.apk f:/explorer/byreadreader.apk byread
其中–keystore f:/explorer/eclipse3.5/bbyread.keystore 为密钥文件 -storepass byread002为密钥文件密码 byread 为密钥别名 -keypass byread002为密钥别名密码,-signedjar f:/explorer/byread.apk为签名后生成的apk文件 f:/explorer/byreadreader.apk为未签名的文件。

转自:http://blog.csdn.net/zuolongsnail/article/details/6444304

转自:http://jojol-zhou.iteye.com/blog/729254

分享到:
评论

相关推荐

    Android命令行手动编译打包详解

    ### Android命令行手动编译打包详解 #### 一、引言 随着移动互联网技术的快速发展,Android已经成为全球最大的移动操作系统之一。对于开发者来说,掌握如何使用命令行进行Android项目的编译与打包是非常重要的技能...

    超全Android反编译工具包(图形、命令行、拖拽)

    然而,由于自动反编译的过程可能会出现一些语法错误,可能需要手动修正后才能正常运行。 在反编译过程中,需要注意以下几点: 1. 法律风险:未经授权的反编译可能侵犯他人的知识产权,所以在进行反编译前,确保你有...

    android studio 必备编译打包工具

    这篇我们将深入探讨Android Studio必备的编译打包工具——Gradle及其相关知识。 **Gradle** Gradle是一种基于Groovy语言的开源构建自动化系统,其设计目标是兼顾灵活性和性能。在Android Studio中,Gradle通过灵活...

    android sdk和javafx打包androidapk示例

    4. **打包和编译**:使用JFXMobile Plugin的命令行工具(如`gradlew`)进行打包。这会生成一个适用于Android的特定版本的JavaFX应用,同时也会处理相关的资源和依赖。 5. **签名和发布**:在生成的APK文件准备好后...

    命令行创建Android项目

    在Android中,Ant简化了编译和APK打包的过程。下载Apache Ant后,将其解压缩并配置环境变量,新建`ANT_HOME`指向Ant的安装路径,并在`PATH`变量中添加`%ANT_HOME%\bin`。 通过命令行创建Android项目,首先需要切换...

    ApkTool+auto-sign Android反编译打包+签名

    这两个工具在Android应用的反编译和签名过程中扮演着关键角色。 ApkTool是一款流行的开源工具,专门用于反编译Android应用程序(APK)文件。它允许开发者解压APK,查看并编辑其资源文件,如XML布局、图片、字符串...

    android 反编译工具集

    apktool是一个强大的Android反编译工具,它不仅可以解包APK文件,还能将其重新打包并签名,使其可以重新安装。Apktool能够解析APK的资源文件,包括XML布局、图片、字符串资源等,并将它们以原始格式展示,方便分析和...

    android shell批量打包

    在Android开发过程中,有时我们需要对应用进行批量打包,特别是在测试、发布或者构建多个版本时,手动逐一打包会非常耗时且容易出错。此时,利用Android Shell命令进行批量打包就显得尤为重要。Android Shell批量...

    界面式反编译打包工具apk

    【标题】"界面式反编译打包工具apk"是一个专为Android应用开发者设计的图形化工具,它允许用户对APK文件进行反编译、修改和重新打包。这个工具简化了对APK内部结构的探索和调整过程,使得开发者或者逆向工程师能够...

    Android多渠道打包工具

    在Android应用开发中,多渠道打包是一个常见的需求,特别是在商业化分发和推广过程中。它允许开发者为不同的分发渠道创建定制的应用程序包(APK),每个渠道包含特定的渠道ID或者参数,以便追踪应用程序的来源和下载...

    apktool android反编译-资源文件获取,能够提取出图片文件和布局文件进行使用查看

    APKTool是一个强大的开源工具,专为Android应用的反编译和再打包而设计。它允许开发者提取APK中的资源文件,如图片、布局XML、字符串表等,并可以重新打包和签名,以生成一个可安装的新APK。这个过程对于调试、学习...

    android-ext4打包工具

    在使用“android-ext4打包工具”时,你需要准备一个包含所有所需系统文件的目录,这些文件通常是从AOSP(Android Open Source Project)源码编译得到,或者从已有的系统映像中提取。然后,通过调用脚本或者手动执行...

    python android批量多渠道打包

    Python脚本的核心是调用Android SDK中的`build-tools`目录下的`aapt`(Android Asset Packaging Tool)和`apktool`等工具,以及NDK中的`ndk-build`或`cmake`来完成打包过程。你需要了解这些工具的用法,例如`aapt`...

    Android APK反编译详解

    本文将深入探讨Android APK反编译的详细步骤和工具,帮助开发者或研究人员理解这一过程。 首先,我们需要了解APK文件的结构。APK是Android应用的打包格式,包含了DEX(Dalvik字节码)文件、资源文件、Manifest.xml...

    Android Apk一键反编译 (支持Mac 和 Windows)

    该工具的核心功能是提供了一键式的反编译体验,意味着用户无需进行复杂的命令行操作或手动安装多个工具,即可完成整个过程。这大大降低了入门门槛,使得无论是初级开发者还是高级技术人员都能方便地对APK进行解包和...

    AntiDroidV1.1 最好用的Android反编译和签名工具

    Antidroid.exe是本套工具的核心,它提供了一整套图形用户界面(GUI),使得Android应用的反编译、修改和重新打包过程变得简单。用户无需手动执行复杂的命令行操作,只需要按照界面提示一步步操作,就能完成整个流程...

    Android 源码打包 sources.zip

    总的来说,掌握Android源码打包不仅需要了解Git、Repo、Python脚本编写,还要熟悉Android的构建系统和编译工具。这是一项涉及多方面技能的任务,对于深入理解Android系统和提升开发能力具有重要意义。通过不断学习和...

    Android反编译工具合集-.rar

    使用Smali2Java通常涉及编写脚本或手动处理转换过程。 这些工具的结合使用,使开发者或安全研究人员能够对Android应用进行深度分析,了解其内部工作原理,修复漏洞,或者在遵守版权法律的前提下进行二次开发。然而...

    apkKiller_反编译_一键打包签名工具

    【apkKiller_反编译_一键打包签名工具】是一个专为Windows用户设计的免费Android应用反编译和打包工具。这款工具集成了多种实用功能,包括解包、搜索、重新打包、签名以及批量打包,使得Android应用的逆向工程过程变...

    使用ant构建android自动化打包实例源码

    - 使用Ant构建Android应用自动化打包可以显著提高开发效率,减少手动操作的错误。 - 熟悉Ant的配置和任务定义是每个Android开发者必备的技能之一。 - 结合"Command4Ant"这样的工具,可以进一步定制化和优化自动化...

Global site tag (gtag.js) - Google Analytics