예제 #1
0
        private string DumpScreen(string serial)
        {
            var savePath = Path.Combine(AssemblyDirectory, "dump.xml");
            var files    = _terminal.ExecuteCmdCommand("adb.exe", "-s", serial, "shell", "ls", "/sdcard/");

            if (files.Contains("dump.xml"))
            {
                _terminal.ExecuteCmdCommand("adb.exe", "-s", serial, "shell", "rm", "/sdcard/dump.xml");
            }

            _terminal.ExecuteCmdCommand("adb.exe", "-s", serial, "shell", "uiautomator", "dump", "/sdcard/dump.xml");
            _terminal.ExecuteCmdCommand("adb.exe", "-s", serial, "pull", "/sdcard/dump.xml", AssemblyDirectory);
            return(savePath);
        }
예제 #2
0
        /// <summary>
        /// Get all the connected devices
        /// </summary>
        /// <returns>A list with serials of all the connected devices</returns>
        public IList <string> GetAllConnectedDevices()
        {
            var serials = new List <string>();
            var output  = _terminal.ExecuteCmdCommand("adb.exe", "devices");
            var devices = output.Split(new[] { "\r\n" }, StringSplitOptions.RemoveEmptyEntries);

            for (int i = 1; i < devices.Length; i++)
            {
                if (devices[i].Contains("daemon"))
                {
                    continue;
                }

                serials.Add(devices[i].Split('\t').First());
            }

            return(serials);
        }