【完整教程windows10版本】jenkins android 修改自定义参数到项目中(二)
原创
©著作权归作者所有:来自51CTO博客作者mp624183768的原创作品,请联系作者获取转载授权,否则将追究法律责任
执行shell时,引用Jenkins中定义的变量用${param}
执行batch时,引用Jenkins中定义的变量用%param%
打release包 我相信大家都会把
不然没法继续
教程开始
每次设置都记得 应用保存一下 不然可能会保存不上
步骤到这里 jenkins 已经设置完毕了
代码如何设置呢
参数会映射到gradle.properties
文件中的对应参数名,我们先在该文件中定义一个参数并赋默认值
# Project-wide Gradle settings.
# IDE (e.g. Android Studio) users:
# Gradle settings configured through the IDE *will override*
# any settings specified in this file.
# For more details on how to configure your build environment visit
# http://www.gradle.org/docs/current/userguide/build_environment.html
# Specifies the JVM arguments used for the daemon process.
# The setting is particularly useful for tweaking memory settings.
#org.gradle.jvmargs=-Xmx1536m
# When configured, Gradle will run in incubating parallel mode.
# This option should only be used with decoupled projects. More details, visit
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
# org.gradle.parallel=true
baseUrl="https://www.baidu.com/"
然后在build.gradle
中获取该参数并添加到BuildConfig.java
中:
buildConfigField "String", "baseUrl", baseUrl
同步代码后在 buildConfig中可以看到
大家不相信的话可以在代码上试下
package com.huikeyun.jenkinstest;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
/**
* Hello World!
*/
private TextView mTvText;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initView();
Toast.makeText(this, "", Toast.LENGTH_SHORT).show();
mTvText.setText(BuildConfig.baseUrl);
}
private void initView() {
mTvText = (TextView) findViewById(R.id.tv_text);
}
}
直接运行上面显示的是百度
最后一步
jenkins运行的话 显示的是sppapp.com
这就是。。。jenkins自定义参数 看来没有想象中那么难
jenkins在线参数也能应用到打包命令当中
已知
//多渠道打包命令 打开cmd 执行./gradlew assembleRelease
//多渠道单个打包命令 打开cmd 执行./gradlew assemblemeizuRelease
baidu {}
sanliuling {}
yyb {}
xiaomi {}
huawei {}
meizu {}
dev{}
求 如何随心所欲的打包
这个就是应用场景了