adbOptions——安卓gradle

2,395 阅读2分钟

目录
一、前言
二、adbOptions
三、adbOptions属性
四、写在最后

一、前言

今天分享 adb 配置,adb 对于 android 开发人员来说是必不可少的,开发调试的时候,我们便会用到他,只是大多数时候 ide 帮我们屏蔽了这些细节。

adb的全称为 Android Debug Bridge,即为android 调试桥,很形象的表达出了他的职责即为帮我们连接开发设备和调试设备。

二、adbOptions

1、存在形式

会映射为 com.android.build.gradle.internal.dsl.AdbOptions 类。继承结构如下:

2、所属位置

android{
	adbOptions{
		...
	}
}

三、adbOptions属性

1、timeOutInMs

  • 类型:int
  • 描述:设置adb执行超时的时间,单位毫秒。有时在安装调试apk包时,报了exception(例如:CommandRejectException),可以考虑将该参数的时长调长,一般情况下我们不需要进行配置。
  • 使用:
adbOptions {
   	// 5秒
    timeOutInMs 5 * 1000
}

2、installOptions

  • 类型:Collection< String >
  • 描述:用于增加执行 adb install 的参数
  • 使用:
adbOptions {
	// adb install -d
	installOptions '-d'
}

可使用的参数有如下几个: -r: replace existing application -t: allow test packages -d: allow version code downgrade (debuggable packages only) -p: partial application install (install-multiple only) -g: grant all runtime permissions

举个例子,有时候需要进行测试升级版本兼容,例如:两个版本的数据库表有所变动,但数据又不可丢失,需要进行迁移兼容,在开发时就需要高低版本的切换进行测试,但是有一个问题,android在从高版本降级到低版本时,需要删除原先的应用,此时就会导致数据丢失,导致测试流程不顺畅。所以此时我们需要降级时,同样保留数据。

从上面的参数中,我们知道“-d”参数满足此时的场景。可以使用如下配置

adbOptions {
	installOptions '-d'
}

或是使用cmd运行

adb install -d apk路径

四、写在最后

Gradle项目地址:Github传送门 (如果对你有所帮助或喜欢的话,赏个star吧,码字不易,请多多支持)

本篇博文的 adbOptions 配置,请进传送门

如果觉得本篇博文对你有所启发或是解决了困惑,给个赞或关注公众号呀,小盆友会继续分享更多的优质文章。