不用IDE手动创建Android工程,不用 IDE,仅用命令行和 SDK 开发 Android App-Go语言中文社区...

1.新建项目文件夹

mkdir Hello

进入该文件夹:

cd Hello

2.创建 java 代码所在文件夹

mkdir srcdomdomain

3.创建 java 文件

vim srcdomdomainSayingHello.java

进入 vim 编辑模式,点击 i 开始插入代码,输入:

package dom.domain;

import android.widget.TextView;

public final class SayingHello extends android.app.Activity

{

public void onCreate( final android.os.Bundle activityState )

{

super.onCreate( activityState );

final TextView textV = new TextView( SayingHello.this );

textV.setText( "Hello world" );

setContentView( textV );

}

}

点击 Esc 退出 vim 编辑模式,输入 :wq 保存。

4.创建 AndroidManifest.xml 文件

vim AndroidManifest.xml

进入 vim 编辑模式,点击 i 开始插入代码,输入:

package='dom.domain' a:versionCode='0' a:versionName='0'>

点击 Esc 退出 vim 编辑模式,输入 :wq 保存。

5.创建资源文件目录

mkdir res

6.编译资源文件

aapt package -f -I E:wareAndroidsdkplatformsandroid-27android.jar -J src -m -M AndroidManifest.xml -S res -v

其中,E:wareAndroidsdk 是 SDK 安装目录,使用时务必替换为自己的 SDK 路径

由于本例中没有资源文件,所以这一行命令执行后什么也不会生成。

7.将 java 文件编译成 .class 字节码文件

javac -bootclasspath E:wareAndroidsdkplatformsandroid-27android.jar -classpath src -source 1.7 -target 1.7 srcdomdomain*.java

这一步执行完成后,srcdomdomain 文件夹下会编译出 SayingHello.class 文件

8.将字节码文件转换成 dex 格式

首先使用 jill 将 .class 文件转换为 .jayce

java -jar E:wareAndroidsdkbuild-tools27.0.3jill.jar --output classes.jayce src

这一步完成后,当前目录下会生成 classes.jayce 文件

然后使用 jack 将 .jayce 文件转换为 .dex

java -jar E:wareAndroidsdkbuild-tools27.0.3jack.jar --import classes.jayce --output-dex .

这一步完成后,当前目录下会生成 classes.dex 文件

9.将所有资源文件打包到一个地方

aapt package -f -F app.apkPart -I E:wareAndroidsdkplatformsandroid-27android.jar -M AndroidManifest.xml -S res -v

这一步完成后,当前目录下会生成 app.apkPart 文件

10.使用 ApkBuilder 工具将 dex 和资源文件打包成 apk 文件

java -classpath E:wareAndroidsdktoolslibsdklib-26.0.0-dev.jar com.android.sdklib.build.ApkBuilderMain app.apkUnalign -f classes.dex -u -z app.apkPart

这里会产生一个警告:THIS TOOL IS DEPRECATED. See --help for more information.,这个工具过时了,但暂时没有什么影响,可以继续使用。这一步完成后,当前目录下会生成 app.apkUnalign 文件

11.使用 zipalign 优化 apk

zipalign -f -v 4 app.apkUnalign app_aligned.apk

这一步完成后,当前目录下会生成 app_aligned.apk 文件

12.使用 debug 密钥给 apk 签名

jarsigner -verbose -keystore "C:UsersKevin Wang.androiddebug.keystore" -signedjar app.apk app_aligned.apk androiddebugkey

其中,C:UsersKevin Wang 是你的用户地址,可在命令行输入 %USERPROFILE% 查看自己的地址,这里使用的 Android debug 密钥库,接下来会让你输入密码,默认密码是 android

这一步完成后,当前目录下会生成 app.apk 文件。这一个 apk 文件就是最终的 apk 了,可以直接安装到真机上运行,或者使用 Android 模拟器安装运行。

13.启动 Android 模拟器

先查看已有的 Android 模拟器:

emulator -avd -list-avds

启动 Android 模拟器

emulator -avd Pixel_2_API_28

其中,Pixel_2_API_28是模拟器名字,从上一步列出的已有模拟器中选择一个即可。

14.安装 apk

新开一个命令行窗口,安装 apk

adb install app.apk

15.启动 app

adb shell am start -n dom.domain/.SayingHello

大功告成,运行结果:

72a092566a1a6961cbb555e4a4d5b409.png

参考文章

注1:aapt,adb,emulator等命令想要直接使用,需要设置环境变量,要不就要用 sdk 中的全路径。

注2:这破玩意花了我两天时间调试,整个过程花里胡哨,结果又比较 low,纯属个人爱好,但调通了还挺爽的。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值