>>分享Android开发相关的技术 书籍支持  卫琴直播  品书摘要  在线测试  资源下载  联系我们
发表一个新主题 开启一个新投票 回复文章 您是本文章第 25679 个阅读者 刷新本主题
 * 贴子主题:  android cts 相关 回复文章 点赞(0)  收藏  
作者:Jacky    发表时间:2020-05-15 08:05:18     消息  查看  搜索  好友  邮件  复制  引用

   1. 在linux和windows中使用不同的命令打开窗口,比如使用adb 时,linux要用:

Runtime.getRuntime(). exec(new String[] {"/bin/sh","-c",cmd});

而windows会用

  Runtime.getRuntime(). exec(new String[] {"cmd","/c",cmd});,

如果都用/bin/bash,会报以下错误:

java.io. IOException: Cannot run program "/bin/bash": CreateProcess error=2, The system cannot find the file specified

     at java.lang.ProcessBuilder.start(Unknown Source)

     at java.lang.Runtime.exec(Unknown Source)

     at java.lang.Runtime.exec(Unknown Source)

  2. set aapt before running CTS

CTS currently supports 64-bit Linux and Mac OS host machines.

              Before running the CTS, make sure you have recent versions of both Android Debug Bridge (adb) and Android Asset Packaging Tool (AAPT) installed and those tools' location added to the system path of your machine.

              To install ADB, download the Android SDK Tools package for your operating system, open it, and follow the instructions in the included README file. For troubleshooting information, see Installing the Stand-alone SDK Tools.

              Ensure adb and aapt are in your system path. The following command assumes you've opened the package archive in your home directory:

               export PATH=$PATH:$HOME/android-sdk-linux/build-tools/<version>

3. UI automator

使用UI.takeScreenshot(path), path related

a) 使用

/data/local/tmp/
时生成文件aa.png报错,只能先push 一个叫aa.png的文件之后,才能截屏时,替换原来的文件

b)

使用当前testcase本身的包路径,可以生成文件,但是不能pull出来 Permission denied

文件实际路径:/data/user/0/com.test/files/aa.png

c)

  save files that are private to your app

File f=  mContext.getApplicationContext().getExternalFilesDir(Environment.DIRECTORY_DOWNLOADS);
File path = new File(f.getAbsolutePath()+File.separator+"99.png");
mDevice.takeScreenshot(path);
可以直接生成文件aa.png.

文件实际路径:

/storage/emulated/0/Android/data/com.test/files/Download/aa.png

d)

save public files on the external stroage

File f=  Environment.(Environment.)File path = File(f.getAbsolutePath()+File.+)
takeScreenshot--- /storage/emulated/0/Download/8888.png

  E/UiDevice: failed to save screen shot to file

   java.io.FileNotFoundException: /storage/emulated/0/Download/8888.png  (Permission denied)

需要添加权限:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

        

----------------------------
原文链接:https://blog.51cto.com/yingerfei/1737367

程序猿的技术大观园:www.javathinker.net



[这个贴子最后由 flybird 在 2020-05-15 17:14:23 重新编辑]
  Java面向对象编程-->内部类
  JavaWeb开发-->JavaWeb应用入门(Ⅰ)
  JSP与Hibernate开发-->Spring、JPA与Hibernate的整合
  Java网络编程-->Socket用法详解
  精通Spring-->创建综合购物网站应用
  Vue3开发-->Vue组件开发高级技术
  Android安卓面试复盘
  Android--Widget开发
  Android SDCard UnMounted 流程分析
  Android制作Tabs界面的常用方法
  Android ExpandableListView 使用范例
  Android 手势操作GestureDetector
  Android JSON网络数据交换
  Android多线程断点续传
  Android UI学习 - TableLayout使用范例
  浅析Android的通知系统
  Android资源命名规范
  Android ListView高度问题
  Roboletric+Retrofit2单元测试
  Android_实现商品详情的展示页及布局
  Android开发学习笔记:浅谈WebView-IT的点点滴滴
  更多...
 IPIP: 已设置保密
楼主      
1页 0条记录 当前第1
发表一个新主题 开启一个新投票 回复文章


中文版权所有: JavaThinker技术网站 Copyright 2016-2026 沪ICP备16029593号-2
荟萃Java程序员智慧的结晶,分享交流Java前沿技术。  联系我们
如有技术文章涉及侵权,请与本站管理员联系。