【发布时间】:2020-09-18 12:37:41
【问题描述】:
我正在尝试在上传到 firebase 测试实验室的 Android 捆绑包上运行 Espresso 测试。我还包含了 firebase Screenshotter 库。我在 firebase 测试实验室收到以下错误:
09-18 05:22:13.937:E/cloud_screenshotter(18993):截屏异常:java.io.FileNotFoundException:/sdcard/screenshots/com.augustinus.fcmtest.LoggedInTests-haveVideoCallScreen-CallNotification-1.jpg:打开失败:ENOENT(没有这样的文件或目录)
我已经拥有存储权限,这会显示在日志的开头:
09-18 02:51:37.784: I/GrantPermissionCallable(18946): Permission: android.permission.READ_EXTERNAL_STORAGE is already granted!
09-18 02:51:37.785: I/GrantPermissionCallable(18946): Permission: android.permission.WRITE_EXTERNAL_STORAGE is already granted!
09-18 02:51:37.785: I/GrantPermissionCallable(18946): Permission: android.permission.READ_EXTERNAL_STORAGE is already granted!
使用的设备是物理设备。像素 4,API 级别 29
更新: 再次测试,可以确认问题存在于 Api 级别 29 但不是 Api 级别 28。在 Api 级别 29 (Android 10) 上,访问存储的工作方式发生了一些变化。访问共享媒体文件夹是不同的。 Firebase ScreenShotter 很可能尚未更新以应对 API 级别 29。
【问题讨论】:
标签: android firebase android-espresso firebase-test-lab