java - Android 测试 - 带有 queryIntentActivities 的函数返回空列表
问题描述
所以我正在研究一个 UI 测试类,我面临的问题是我的 UI 测试触发的函数包含一个检查,queryIntentActivities()
这个函数返回一个空列表,我不知道为什么。任何想法 ?
测试类:
@RunWith(AndroidJUnit4::class)
class TestMyActivity {
private lateinit var scenario: ActivityScenario<MyActivity>
@Before
fun setUp() {
scenario = ActivityScenario.launch(MyActivity::class.java)
}
@Test
fun testMybutton() {
scenario.onActivity {
onView(withId(R.id.my_recyclerview))
.perform(
RecyclerViewActions.actionOnItem<ViewHolder>(
hasDescendant(withText("text that match")),
click()
)
)
intended(hasAction(Intent.ACTION_DIAL))
}
}
点击时调用的函数:
public static void startCall(Context context, String phoneNumber) {
try {
Uri phoneUri = Uri.parse("tel:" + phoneNumber);
Intent intent = new Intent(Intent.ACTION_DIAL);
intent.setData(phoneUri);
// Check if some app in device can handle this intent ( = check if
// device
// can use
// dial feature, example : tablet can't)
PackageManager manager = context.getPackageManager();
List<ResolveInfo> infos = manager.queryIntentActivities(intent, 0);
if (infos.size() > 0) {
context.startActivity(intent);
}
} catch (Exception e) {
e.printStackTrace();
}
}
谢谢
解决方案
推荐阅读
- kubernetes - 从没有 exec 的容器中获取正在运行的进程
- python - 具有未知参数的函数作为另一个函数/ Python的参数
- java - ImapMailReceiver 因提供的 taskScheduler 线程被阻塞而停止
- php - php artisan db:seed [ErrorException] count(): 参数必须是数组或者实现了Countable的对象
- python - Django 不显示块内容
- python - 具有多重继承问题的 super()
- r - 如何使用 ioslides 演示文稿和 DT 包安装交互式表格?
- ruby - Windows 上的 Rake 任务错误:没有这样的文件或目录
- android - onNewIntent() 在深度链接-Ionic-Android 上多次调用
- jmeter - 如何分析JMeter生成的堆转储文件