gpt4 book ai didi

android - 如何将参数传递给使用 adb shell am Instrumentation 命令启动的测试函数

转载 作者:IT老高 更新时间:2023-10-28 22:12:28 25 4
gpt4 key购买 nike

我正在使用 Android 进行开发,我正在使用仪器来测试手机应用程序。Instrumentation 是用于测试应用程序的 Android 环境。

为此,我使用带有测试用例名称的 am 命令。我运行 adb,然后我进入 adb shell,然后在 shell 中写入 am 命令。

我希望与这个 am 命令一起传递一个参数。我的意思是我希望将参数传递给 am 命令启动的测试。

有可能吗???请帮忙?

最佳答案

您可以将数据 uri、mime 类型甚至“附加”传递给 am command .

am [start|instrument]

am start [-a <action>] [-d ]
[-t <mime_type>] [-c <category> [-c <category>] ...]
[-e <extra_key> <extra_value>
[-e <extra_key> <extra_value> ...]
[-n <component>][-D] [<uri>]

am instrument [-e <arg_name> <arg_value>] [-p <prof_file>] [-w] <component>

您可以将它们作为“附加项”传递,然后获取传递给它的附加项。

你会像这样传递它们:

am start -a android.intent.action.VIEW -c android.intent.category.DEFAULT 
-e foo bar -e bert ernie -n my.package.component.blah

然后在您的代码中:

Bundle extras = this.getIntent ( ).getExtras ( );

if ( extras != null ) {
if ( extras.containsKey ( "foo" ) ) {
Log.d ( "FOO", extras.getString ( "foo" ) );
} else {
Log.d ( "FOO", "no foo here" );
}

if ( extras.containsKey ( "bert" ) ) {
Log.d ( "BERT", extras.getString ( "bert" ) );
} else {
Log.d ( "BERT", "Bert is all alone" );
}
} else {
this.setTitle ( "no extras found" );
}

关于android - 如何将参数传递给使用 adb shell am Instrumentation 命令启动的测试函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3228245/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com