打apk包的环境依赖

1.jdk

2.sdk

3.ndk

打apk包的工具

gradle

mkdir /usr/local/Android
cd /usr/local/Android
mkdir sdk gradle ndk

1.jdk安装

2.sdk安装

https://www.androiddevtools.cn/下载地址

cd /usr/local/Android/sdk
wget https://dl.google.com/android/android-sdk_r24.2-linux.tgz #此版本过低需要多次更新sdk
tar xf android-sdk_r24.-linux.tgz
cd /usr/local/Android/sdk/android-sdk-linux/tools
./android update sdk --no-ui #更新sdk命令

sdk 目录

如果更新完后还缺少特定的安卓版本依赖,可以查看所有版本下载指定依赖

/usr/local/Android/sdk/android-sdk-linux/tools/android list sdk -a
#会显示需要更新

/usr/local/Android/sdk/android-sdk-linux/tools/android update sdk -a --no-ui --filter 3            #根据编号更新指定安卓版本 

3. ndk安装

https://developer.android.google.cn/ndk/downloads/

cd /usr/local/Android/ndk
wget https://dl.google.com/android/repository/android-ndk-r16b-linux-x86_64.zip
unzip android-ndk-r16b-linux-x86_64.zip

安装打包工具gradle

https://gradle.org/

unzip /usr/local/Android/gradle/gradle-5.1-bin.zip

配置所有插件的环境变量

vim /etc/profile
export GRADLE_HOME=/usr/local/Android/gradle/gradle-5.1
export ANDROID_HOM=/usr/local/Android/sdk/android-sdk-linux
export JRE_HOME=${JAVA_HOME}/jre
export NDK_HOME=/usr/local/Android/ndk/android-ndk-r16b
export PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin:$GRADLE_HOME/bin:$ANDROID_HOME/platform-tools:$NDK_HOME:$PATH source /etc/profile

apk打包

首先拉取代码,在代码目录里有一个gradlew文件,默认没有执行权限,chmod +x  gradlew 给与执行权限,

./gradlew assembleRelease                      #打包打完的包在羡慕目录的animalInsurance/build/outputs/apk/release/下
如果找不到可以 find ./ |grep apk 搜索下

配置安卓代码里找到sdk,ndk工具的位置

在安卓代码的根目录下有一个local.properties文件 在此文件里告诉安卓代码sdk工具的位置

vim local.properties

## This file must *NOT* be checked into Version Control Systems,
# as it contains information specific to your local configuration.
#
# Location of the SDK. This is only used by Gradle.
# For customization when using a Version Control System, please read the
# header note.
#Fri Jan :: CST
ndk.dir=/usr/local/Android/ndk/android-ndk-r16b #ndk路径
sdk.dir=/usr/local/Android/sdk/android-sdk-linux #sdk 路径

使用jks给apk签名

jarsigner -verbose -keystore xxx.jks(jks文件) -signedjar xxx.apk(签名后的apk名字) xxx.apk(需要签名的apk) xxx(keystore别名)

如果失败可能是已有签名

需要先把apk文件的后缀给为zip,

解压zip文件,把文件下的 META-INFO 文件,

再把解压的文件打包为zip文件,

把zip文件改为apk文件,再重新签名即可成功

jenkins配置自动安卓上线

设置git拉取代码

执行bash

#!/bin/bash
#name:王康
#作用: jenkins安卓打包
baopath=/var/lib/jenkins/workspace/安卓打包发布 #定义代码位置
webpath=/var/www/html/android            #定义网页位置
chmod +x $baopath/gradlew               #给打包命令加执行权限
cd $baopath                       #进入目录下
./gradlew assembleRelease              #打包 [ -f $webpath/nongxian.apk ] && mv $webpath/nongxian.apk $webpath/`date +%F-%T`nongxian.apk
mv $baopath/animalInsurance/build/outputs/apk/release/animalInsurance-release.apk $webpath/nongxian.apk

安卓打包apk的更多相关文章

  1. unity调用安卓打包apk时的错误unable to convert classes into dex format

    出现这种问题一般是由于有重复的文件所致,看下unity报的错误那些文件重复了,把重复的文件删了即可 例如,将eclipse中的安卓工程bin\class导出jar包时,会将下面的.class文件打包, ...

  2. flutter vscode 安卓打包apk文件

    配置 VSCode默认是没有使用密钥签名的,往往我们在正式项目中是需要签名的.那就创建好了...所以需要自己创建并使用密钥签名 步骤一 创建密钥库 执行以下命令: keytool -genkey -v ...

  3. Android Studio 学习笔记1.1 创建自己的第一个安卓项目并且打包APK

      自从上一次安装完安卓开发工具Android Studio后抽时间看视屏尝试编写自己的第一个安卓项目约两周的时间 每天下班后会花上1~2小时的时间去学习 目前的成果如下:次元宅的我.apk 嘛 总而 ...

  4. Unity3D安卓打包参数配置与兼容性的关系分析

    前言 在使用Unity3D工程导出安卓安装包的时候,往往会遇到兼容性的问题,针对某些机型,要么无法打开游戏,要么会出现卡机的现象.面对这种情况,我们可以调节相关的参数来提高兼容性. 为了了解在打包时候 ...

  5. 【Egret】Wing3发布移动APP功能,打包APK流程以及会遇到的问题

    流程:1.安装好wing 3,然后 插件--Egret项目工具--发布移动APP--Build android native project 2.配置发布环境: Android 1.egret eng ...

  6. ionic2新手入门整理,搭建环境,创建demo,打包apk,热更新,优化启动慢等避坑详解

    onic官方文档链接:http://ionicframework.com/docs/ 如果是新的环境会有很多坑,主要是有墙,请仔细阅读每个步骤 文档包含以下内容: l  环境搭建 l  创建demo并 ...

  7. CoCos2dx开发:PC端调试运行正常但打包apk文件后在手机上点击闪退

    记:今天调试时出现的一个PC端调试运行正常,但打包apk文件后在手机上点击闪退的问题. 可能在不同的情况条件下,会有不同的原因导致apk安装后闪退问题.拿android studio等软件来说,开发安 ...

  8. react-native命令行打包APK报错

    我是根据react-native官网进行的react-native打包APK 我的步骤为 第一步就是生成密钥 第二步就是将密钥拷入 第三步:在\android\gradle.properties写入 ...

  9. cocos2d-x 编译 安卓(android)apk文件

    摘要: 一.下载Android环境 搭建Android环境需要用到Android SDK.NDK.Ant和JDK: 下载Android SDK  下载Android NDk  下载Android JD ...

随机推荐

  1. Android和kali的互操作性

    1.手机上讲kali Linux系统安装上面实现小巧方便的移动渗透测试工具 其实我们都知道 Android操作系统是基于linux 开发的,这就为我们将kali linux 系统移植到手机上提供了原理 ...

  2. Linux命令——procinfo

    简介 proc文件系统是一个虚拟文件系统,包含有关进程和系统信息的文件. proc 文件系统开机时自动挂载并映射到/proc目录.许多程序从/proc目录中检索信息,对其进行处理并使其易于用于各种目的 ...

  3. Python高阶用法总结

    目录 1. lambda匿名函数 1.1 函数式编程 1.2 应用在闭包 2. 列表解析式 3. enumerate内建函数 4. 迭代器与生成器 4.1 迭代器 4.3 生成器 5. 装饰器 前言: ...

  4. Zookeeper配置安装

    单机模式: 1:修改hosts文件 ​ 2:下载解压zookeeper.tar文件 3:创建data目录和logs目录 进入zookeeper目录下创建 ​ 4:复制一份zoo_sample.cfg配 ...

  5. python 爬虫相关含Scrapy框架

    1.从酷狗网站爬取 新歌首发的新歌名字.播放时长.链接等 from bs4 import BeautifulSoup as BS import requests import re import js ...

  6. MyBatis3_[tp_41-42-43]-_动态sql_trim_自定义字符串截取_choose分支选择_update的set与if-trim 结合的动态更新

    笔记要点出错分析与总结 /** 笔记: * 查询的时候,如果某些条件,没带可能SQL拼装会有问题; * 1.-->给where 后面加上 1=1, 以后的条件都and XXX * 2. < ...

  7. python_面向对象——反射

    1.反射 四个方法:getattr() 获取 class Person(): def __init__(self,name,age): self.name = name self.age = age ...

  8. Jenkins+jmeter+ant+Git 持续集成(六、代码提交到Gitlab即自动构建)

    实现原理: 利用jenkins和gitlab的webhook结合,实现提交代码之后,自动触发jenkins的构建. 1.Jenkins的插件安装: 需要安装两个gitlab的插件:Gitlab Hoo ...

  9. TOMCAT 请求HTTP原理

    一.Tomcat是什么?Tomcat是一个Web应用服务器,同时也是一个Servlet/JSP容器.Tomcat作为Servlet容器,负责处理客户端请求,把请求传送给Servlet,并将Servle ...

  10. js原型模式和继承

    function SuperType() { this.property = true; //原型属性 } //基类方法 SuperType.prototype.getSuperValue = fun ...