是的,您可以从命令行轻松完成所有操作(不涉及,我保证)。
这使用了旧的忠实的Apache Ant。它不使用 ,这需要更多的工作。IDEGradle
总结
您键入的内容是(只需2行即可生成apk):
    android create project --target "android-16" --path basj --activity TestActivity --package com.android.basj 
(这将生成一个名为 file 的构建文件,该文件与该文件类似。现在写一些代码,但测试活动.java已经存在,并将编译)Apache Antbuild.xmlbuild.gradle
    ant debug
设置
(注意:自构建工具 v26 以来,“”命令已弃用,因此请使用旧命令(请参阅下面的链接),在这种情况下已弃用意味着完全删除!{顽皮的谷歌})。android.bat
- 
如果尚未安装,请安装Java JDK(例如,您可以使用jdk-8u151-windows-x64.exe),并确保定义了环境变量,例如:JAVA_HOME
 
 JAVA_HOME=C:\Program Files\Java\jdk1.8.0_112
 JAVA_PATH=C:\Program Files\Java\jre1.8.0_112\bin
 
JDK是Java开发工具包。
JRE 是 Java 运行时环境。
- 如果尚未安装(例如installer_r24.4.1-windows.exe,请参阅此答案),然后在SDK管理器GUI中,取消选择所有内容并选择“Android SDK构建工具”(例如)+一个(或多个)平台(例如)。为了证明你不需要,不打算下载它!(仅限 SDK)。- Android SDK Tools- Android SDK Build-Tools 19.1- Android 4.1.2 (API 16) JELLY_BEAN- Android Studio
 
- 下载 Apache Ant(例如 apache-ant-1.9.9-bin.zip) 
细节
要使用 以下命令从命令行创建项目:Android SDK
确定放置项目的位置:
cd c:\android
mkdir antTest
cd antTest
运行以下命令:
C:\Android\sdk1\tools\android create project --target "android-16" --path basj --activity TestActivity --package com.android.basj 
              ^
              |
--------------+ (here's where I keep an old version of tools (version 25 in my case)
以下是创建的目录结构(以及您需要构建的所有文件):
C:.
+---basj
    +---bin
    +---libs
    +---res
    ¦   +---drawable-hdpi
    ¦   +---drawable-ldpi
    ¦   +---drawable-mdpi
    ¦   +---drawable-xhdpi
    ¦   +---layout
    ¦   +---values
    +---src
        +---com
            +---android
                +---basj
创建项目的详细输出:
Created project directory: C:\Android\antTest\basj
Created directory C:\Android\antTest\basj\src\com\android\basj
Added file C:\Android\antTest\basj\src\com\android\basj\TestActivity.java
Created directory C:\Android\antTest\basj\res
Created directory C:\Android\antTest\basj\bin
Created directory C:\Android\antTest\basj\libs
Created directory C:\Android\antTest\basj\res\values
Added file C:\Android\antTest\basj\res\values\strings.xml
Created directory C:\Android\antTest\basj\res\layout
Added file C:\Android\antTest\basj\res\layout\main.xml
Created directory C:\Android\antTest\basj\res\drawable-xhdpi
Created directory C:\Android\antTest\basj\res\drawable-hdpi
Created directory C:\Android\antTest\basj\res\drawable-mdpi
Created directory C:\Android\antTest\basj\res\drawable-ldpi
Added file C:\Android\antTest\basj\AndroidManifest.xml
Added file C:\Android\antTest\basj\build.xml
Added file C:\Android\antTest\basj\proguard-project.txt
从 http://ant.apache.org/ 下载Apache Ant。
有关设置,请参阅本教程:http://www.vogella.com/tutorials/ApacheAnt/article.html
另请参阅本教程:http://blog.vogella.com/2011/03/16/creating-android-applications-via-the-command-line-ant/
编写你的代码(Hello world)。
运行此命令,您可以从另一端获得一个Android Apk(称为TestActivity-debug.apk):
ant debug
嘿普雷斯托,你有一个机器人apk!
添加新结构后:
C:.
├───bin
│   ├───classes
│   │   └───com
│   │       └───android
│   │           └───basj
│   ├───dexedLibs
│   └───res
│       ├───drawable-hdpi
│       ├───drawable-ldpi
│       ├───drawable-mdpi
│       └───drawable-xhdpi
├───gen
│   └───com
│       └───android
│           └───basj
对于最终版本:
ant release
如果您对更广泛的示例感兴趣,或文件,以及Android的更深层次的工作原理,请查看此处Ant build.xmlDEX
如何签署已编译的apk
了解如何签署已编译的apk,以及从
@for3st的答案,这是该帖子的相关部分:
手动过程:
步骤 1:生成密钥库(仅生成一次)
您需要生成一次密钥库,然后使用它来签署您的apk。使用由 JDK 提供的键工具unsigned%JAVA_HOME%/bin/
keytool -genkey -v -keystore my.keystore -keyalg RSA -keysize 2048 -validity 10000 -alias app
第 2 步或第 4 步:Zipalign
zipalign,这是由Android SDK提供的工具,例如 是一个强制性的优化步骤,如果你想上传apk到Play商店。%ANDROID_HOME%/sdk/build-tools/24.0.2/
zipalign -p 4 my.apk my-aligned.apk
注意:使用旧版时,您需要在签名后进行。使用新方法时,您可以在签名之前进行签名(我知道令人困惑)。在apksigner之前调用zipaignign工作正常,jarsignerzipalignapksignerapksignerAPKjarsigner
您可以通过以下方式验证是否对齐:
zipalign -c 4 my-aligned.apk
第3步:签名和验证
使用构建工具 24.0.2 及更早版本
使用 jarsigner,它和 keytool 一样,也附带了 JDK 发行版,并像这样使用它:%JAVA_HOME%/bin/
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my.keystore my-app.apk my_alias_name
并可以使用
jarsigner -verify -verbose my_application.apk
使用构建工具 24.0.3 及更高版本
Android 7.0介绍 ,这是一种新的应用程序签名方案,可提供更快的应用程序安装时间,并防止未经授权更改APK文件(有关详细信息,请参阅此处和此处)。因此,实现了自己的apk签名者,名为:apksigner(duh!脚本文件可以在(.jar位于子文件夹中)中找到。像这样使用它:APK Signature Scheme v2Google%ANDROID_HOME%/sdk/build-tools/24.0.3//lib
apksigner sign --ks my.keystore my-app.apk --ks-key-alias alias_name
并可以通过以下方式进行验证:
apksigner verify my-app.apk