Linux下用java实现apk的生成

11 篇文章 0 订阅

需求

要求
①通过java代码实现apk的生成。
②根据用户要求,修改Android项目的MainActivity.java,再打包生成apk。
③项目部署到服务器上,服务器用的是CentOS。

解决思路

思路

①准备一个批处理文件(.sh文件),文件中书写打包apk的相关命令。
②编写一段java程序,用于调用该批处理文件。
③批处理文件执行后,调用gradle,对Android 项目进行打包。
(至于修改MainActivity.java,我的做法:创建一个新的MainActivity.java文件,再写入用户的相关数据,保存文件即可。)

环境准备

服务器上配置好相关环境,需要有Gradle、Android项目、批处理文件等,JDK必须是1.8及以上的版本。
以下是各部分的介绍。

Gradle

需要在服务器上配置Gradle,使之成为全局变量。
具体可参考本人的博客
Linux下安装配置Gradle

Android 项目

将该项目打包成apk

批处理文件

在文件中填写相关打包命令。
命令分3个部分
①进入到Android项目所在目录,如cd /mnt/Android/Demo
②清除上次的打包结果,如gradle clean
③打包命令,如gradle assembleDebug。这部分必须有。
综上所述,可得到以下命令

cd /mnt/Android/Demo && gradle clean && gradle assembleDebug

JDK

JDK必须是1.8及以上。用低版本的去调用批处理文件,会报错。

补充

生成Apk的相关命令

生成1个debug版本的apk

gradle assembleDebug

生成1个release版本的apk

gradle assembleRelease 

生成1个debug版本的apk和1个release版本的apk

gradle assemble

建议从实际出发,只生成一个需要的apk版本,减少等待时间。

Android Studio

抛去上述的环境准备,可以直接安装一个Android Studio。
在Android Studio上新建一个项目,
然后在Android Studio的Terminal中输入上文提到的打包命令,查看打包效果。
如此一来,只要稍微配置下Gradle即可。

这里可能涉及到无图形界面的Linux系统,如CentOS,如何安装Android Studio。
我的方法是先安一个桌面(如GNOME),通过桌面去安装Android Studio。
具体可参考本人的博客
CentOS下载安装GNOME

想要release且签名的apk

gradle assembleRelease用于生成Release版本的apk。
但在未经过任何配置的情况下,生成的是没有签名的apk,即app-release-unsigned.apk。
那么如何生成一个release且签名的apk呢?
可参考本人的博客
Gradle命令生成签名的apk

至于其中的秘钥文件,可参考本人以下博客的第7点
查看文本的第七点

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值