更多原创测试技术文章同步更新到微信公众号 :三国测,敬请扫码关注个人的微信号,感谢!

简介:adb命令是常用的Android命令行,自动化、代码调试、手工排查问题都会用的到,这里将常用的一些命令行封装成为C#函数,在C#的自动化框架中可以直接调用。

详细内容如下:
 
获取当前app页:
adb -s 设备号 shell \dumpsys activity \| findstr mFocusedActivity
查看设备状态:
adb devices
手机截屏保存到电脑:
adb pull /sdcard/screen.jpg screen.jpg
 
唤醒 安卓 Apk:
public static bool WakeupAndroidApk( string activity)
        {
            string output = GetCmdOutput("adb shell \"am start -n " + activity + "\"");
            return output.Contains("Success" );
        }
 
关闭当前 应用: 
         public static bool closeCurrentActivity( string activity)
        {
            string output = GetCmdOutput("adb -s " + udid + " shell \"pm clear " + activity);
            return output.Contains("Success" );
        }
按屏幕坐标点击:
         public static void Tap( int X, int Y)
        {
            GetCmdOutput( String.Format("adb -s {0} shell input tap {1} {2}" , udid, X, Y));
        }
 
检查当前 应用:
         public static bool CheckCurrentActivity( string activity)
        {
            string output = GetCmdOutput("adb -s " + udid + " shell \"dumpsys activity \"");
            string[] lines = output.Split('\n' );
            string target = "" ;
            Regex reg = new Regex( ".*mFocusedActivity.*");
            foreach(string line in lines)
            {
                if (reg.IsMatch(line))
                {
                    target = line;
                    break;
                }
            }
            return target.Contains(activity);
        }
 
 
        /// <summary>
        /// 打开指定浏览器
        /// </summary>
        /// <param name="browserAndroidApk"> 浏览器</param>
        public static void OpenSpecialBrowser( string browserAndroidApk)
        {
            GetCmdOutput( "adb -s " + udid + " shell am start " + browserAndroidApk);
        }
 
        /// <summary>
        /// 按手机屏幕坐标点击
        /// </summary>
        /// <param name="x"> x坐标</param>
        /// <param name="y"> y坐标</param>
        public static void Tap( int x, int y)
        {
            GetCmdOutput( "adb -s " + udid + " shell input tap " + x + " " + y);
        }
 
        public static void Tab()
        {
            GetCmdOutput( "adb -s " + udid + " shell input keyevent 61" );
        }
 
        /// <summary>
        /// 输入keyevent值对应的字符
        /// </summary>
        /// <param name="key"> keyevent值</param>
        public static void Tab( string key)
        {
            GetCmdOutput( "adb -s " + udid + " shell input keyevent " + "key");
        }
 
        /// <summary>
        /// 输入URL地址
        /// </summary>
        /// <param name="URL"> URL地址</param>
        public static void InputURL( string URL)
        {
            GetCmdOutput( "adb -s " + udid + " shell input text " + URL);
        }
 
        public static void Enter()
        {
            GetCmdOutput( "adb -s " + udid + " shell input keyevent 66" );
        }
 
        /// <summary>
        /// 清理指定的浏览器
        /// </summary>
        /// <param name="browserAndroidApk"> 浏览器</param>
        public static void ClearBrowser( string browserAndroidApk)
        {
            GetCmdOutput( "adb -s " + udid + " shell pm clear " + browserAndroidApk);
        }
 
        /// <summary>
        /// 卸载指定的App
        /// </summary>
        /// <param name="APPAndroidApk"> App</param>
        public static void UninstallApp( string APPAndroidApk)
        {
            GetCmdOutput( "adb -s " + udid + " uninstall " + APPAndroidApk);
        }
 
        /// <summary>
        /// 关闭当前进程Activity
        /// </summary>
        /// <param name="activity"> Activity</param>
        /// <returns> 返回清理结果 </returns>
        public static bool closeCurrentActivity( string activity)
        {
            string output = GetCmdOutput("adb -s " + udid + " shell \"pm clear " + activity);
            return output.Contains("Success" );
        }
 
感谢阅读,作者原创技术文章,转载请注明出处

自动化测试系列:将常用的Android adb shell 命令行封装为C#静态函数的更多相关文章

  1. 将常用的Android adb shell 命令行封装为C#静态函数

    更多原创测试技术文章同步更新到微信公众号 :三国测,敬请扫码关注个人的微信号,感谢! 简介:adb命令是常用的Android命令行,自动化.代码调试.手工排查问题都会用的到,这里将常用的一些命令行封装 ...

  2. 【安卓手机通用】android adb shell 命令大全

    浏览:3116 | 更新:2013-10-17 17:05 | 标签:安卓 android 一.[什么是shell] Linux系统的shell作为操作系统的外壳,为用户提供使用操作系统的接口.它是命 ...

  3. Android adb shell命令大全

    1. 显示系统中全部Android平台: android list targets 2. 显示系统中全部AVD(模拟器): android list avd 3. 创建AVD(模拟器): androi ...

  4. android adb shell 命令大全

    1. 显示系统中全部Android平台: android list targets 2. 显示系统中全部AVD(模拟器): android list avd 3. 创建AVD(模拟器): androi ...

  5. adb shell命令行

    d: cd D:\software\adt-bundle-windows-x86-20131030\sdk\platform-tools ————————> sdk的路径 adb shell s ...

  6. 【android】android 常用adb 和 adb shell 命令

    db是SDK自带的工具,可实现桥接功能:adb shell 可以与手机系统建立交互,是基于andoid Linux系统下的操作 ADB常用命令: 1. 查看设备         adb  device ...

  7. Android 常用adb shell 命令

    原文地址http://blog.csdn.net/rain_butterfly/article/details/40894807 调试Android程序有时需要adb shell 命令,adb全称An ...

  8. Android 常用adb shell 命令(转)

    调试Android程序有时需要adb shell 命令,adb全称Android Debug Bridge ,就是起到调试桥的作用. 通过adb我们可以在Eclipse中通过DDMS来调试Androi ...

  9. Android adb shell 常用命令

    Ø  简介 adb 命令是 Android SDK 中自带的一个调试工具,可以调试电脑中的手机或者模拟器,使用 adb 命令前需要将 sdk 中的 platform-tools 目录添加到环境变量中. ...

随机推荐

  1. python to shell vimdiff

    目录 #!/bin/python3 import os import sys if(len(sys.argv) != 3): exit ("Usage: argv1:fullPath.txt ...

  2. 源码编译vim

    目录 获取最新版 vim 源码 1 git仓库clone 2, 源码包下载,里面有各个版本的vim压缩包 vim 配置选项 配置示例 参考文章 tip 获取最新版 vim 源码 1 git仓库clon ...

  3. 线性表->链式存储->线形链表(单链表)

    文字描述: 为了表示前后两个数据元素的逻辑关系,对于每个数据元素,除了存储其本身的信息之外(数据域),还需存储一个指示其直接后继的信息(即直接后继的存储位置,指针域). 示意图: 算法分析: 在单链表 ...

  4. 关于VMware(虚拟机) 出现错误时处理办法

    我们在开发中难免会用到虚拟机.前段时间老有同学问我虚拟机报错解决办法,趁今天有空特随笔. 错误如下图 首先科普下VT是个啥? Intel VirtualTechnology(VT)既“虚拟化技术” V ...

  5. Python3学习之路~7.5 异常处理

    1.异常基础 在编程过程中为了增加友好性,在程序出现bug时一般不会将错误信息显示给用户,而是现实一个提示的页面,通俗来说就是不让用户看见大黄页!!! try: pass except Excepti ...

  6. Oracle 12C 补丁升级

    升级步骤 Oracle 12.2.0.1升级至12.2.0.1.190115 1.阅读readme文件 2.检查更新opatch 3.备份程序 4.使用opatchauto工具进行数据库升级 5.打O ...

  7. JS获取页面复选框选中的值

    function jqchk(){ //jquery获取复选框值 var chk_value =[]; $('input[class="sel"]:checked').each(f ...

  8. windows10上安装mysql(详细步骤)

    2016年09月06日 08:09:34 阅读数:46198 环境:windwos 10(1511) 64bit.mysql 5.7.14 时间:2016年9月5日 一.下载mysql 1. 在浏览器 ...

  9. 在Ubuntu中,vi命令编辑异常

    在Ubuntu中,进入vi命令的编辑模式,发现按方向键不能移动光标,而是会输出ABCD,以及退格键也不能正常删除字符.这是由于Ubuntu预装的是vim-tiny,而我们需要使用的是vim-full, ...

  10. Javascript学习-简单测试环境

    Javascript学习-简单测试环境 在<JavaScript忍者秘籍>2.4测试条件基础知识中,作者给出了一个精简版的assert和assert组的实现,对于初学者而言,这无疑是一个很 ...