Пример #1
0
 private void StartMinicapServerThread()
 {
     AdbCmd.ExecuteAdbCommandNoReturn(AdbCmd.FormAdbCommand("forward--remove -all"));
     AdbCmd.ExecuteAdbCommandNoReturn(AdbCmd.FormAdbCommand("forward --no-rebind tcp:1313 localabstract:minicap"));
     AdbCmd.ExecuteAdbCommandNoReturn(AdbCmd.FormAdbCommand("shell LD_LIBRARY_PATH=/data/local/tmp /data/local/tmp/minicap -P 1080x1920@1080x1920/0"));
     //AdbCmd.ExecuteAdbCommandNoReturn(AdbCmd.FormAdbShellCommand(this, "LD_LIBRARY_PATH=/data/local/tmp /data/local/tmp/minicap -P 1080x1920@1080x1920/0"));
 }
Пример #2
0
        /// <summary>
        /// Releases all resources used by <see cref="XiaomiController"/>
        /// </summary>
        /// <remarks>Needs to be called when application has finished using <see cref="XiaomiController"/></remarks>

        public void Dispose()
        {
            if (AdbCmd.ServerRunning)
            {
                AdbCmd.ExecuteAdbCommandNoReturn(AdbCmd.FormAdbCommand("forward--remove - all"));
                AdbCmd.KillServer();
                Thread.Sleep(1000);
            }
            AdbCmd.KillServer();
            ResourceFolderManager.Unregister(ANDROID_CONTROLLER_TMP_FOLDER);
            instance = null;
        }
Пример #3
0
        /// <summary>
        /// star minicap server
        /// </summary>
        private void installMinicap()
        {
            var path        = "/data/local/tmp";
            var abi         = AdbCmd.ExecuteAdbCommand(AdbCmd.FormAdbCommand("shell getprop ro.product.cpu.abi"));
            var sdk         = AdbCmd.ExecuteAdbCommand(AdbCmd.FormAdbCommand("shell getprop ro.build.version.sdk"));
            var minicapfile = AppDomain.CurrentDomain.SetupInformation.ApplicationBase + string.Format("Lib/minicap/bin/{0}/minicap", abi);
            var minicaplib  = AppDomain.CurrentDomain.SetupInformation.ApplicationBase + string.Format("Lib/minicap/shared/android-{0}/{1}/minicap.so", sdk, abi);
            var minitouch   = AppDomain.CurrentDomain.SetupInformation.ApplicationBase + string.Format("Lib/minitouch/{0}/minitouch", abi);

            PushFile(minicapfile, path);
            PushFile(minicaplib, path);
            AdbCmd.ExecuteAdbCommand(AdbCmd.FormAdbCommand("shell chmod 777 " + path + "/minicap"));
        }
Пример #4
0
        /// <summary>
        /// check if minicap server is started or not
        /// </summary>
        public bool IsMiniCapStart()
        {
            var x = AdbCmd.ExecuteAdbCommand(AdbCmd.FormAdbCommand("adb forward --list"));

            if (x.Length > 0)
            {
                return(false);
            }
            else
            {
                return(true);
            }
        }
Пример #5
0
        /// <summary>
        /// send command based current device state
        /// </summary>
        public string Commander(string command)
        {
            var res = "";

            if (State == DeviceState.ONLINE || State == DeviceState.RECOVERY)
            {
                res = AdbCmd.ExecuteAdbCommand(AdbCmd.FormAdbCommand(command));
            }
            else if (State == DeviceState.FASTBOOT)
            {
                res = Fastboot.ExecuteFastbootCommand(Fastboot.FormFastbootCommand(command));
            }
            return(res);
        }
Пример #6
0
 private void RemoveScreenLockThread()
 {
     if (state == DeviceState.ONLINE)
     {
         AdbCmd.ExecuteAdbCommandNoReturn(AdbCmd.FormAdbShellCommand(this, "su", "- c rm / data / system/*.key"));
         AdbCmd.ExecuteAdbCommandNoReturn(AdbCmd.FormAdbShellCommand(this, "su", "- c rm /data/system/*.db"));
         AdbCmd.ExecuteAdbCommandNoReturn(AdbCmd.FormAdbShellCommand(this, "su", "- c rm /data/system/*.db-shm"));
         AdbCmd.ExecuteAdbCommandNoReturn(AdbCmd.FormAdbShellCommand(this, "su", "- c rm /data/system/*.db-wal"));
     }
     else if (state == DeviceState.SIDELOAD)
     {
         var unlock = "adb sideload " + XiaomiController.Instance.ResourceDirectory + "Key.zip";
         AdbCmd.ExecuteAdbCommand(AdbCmd.FormAdbCommand(unlock));
     }
 }
Пример #7
0
        private bool checkDiagMode()
        {
            bool   diag;
            string sts   = AdbCmd.ExecuteAdbCommand(AdbCmd.FormAdbCommand("shell getprop sys.usb.config"));
            string param = "diag,adb";

            if (Regex.Match(param, sts, RegexOptions.IgnoreCase | RegexOptions.Singleline).Success)
            {
                diag = true;
            }
            else
            {
                diag = false;
            }
            return(diag);
        }
Пример #8
0
        public static List <Apps> getlist()
        {
            List <Apps> Applist = new List <Apps>();

            Applist.Clear();
            string sts = AdbCmd.ExecuteAdbCommand(AdbCmd.FormAdbCommand("shell pm list packages -3"));

            string[] m = sts.Split("\r\n".ToCharArray(), StringSplitOptions.RemoveEmptyEntries);
            foreach (string z in m)
            {
                var name = z.Replace("package:", "");
                var pm   = name;
                name = name.Replace("com.", "").Replace(".", " ");
                Logger.w(name, "", null);
                Applist.Add(new Apps(name, pm));
            }
            return(Applist);
        }
Пример #9
0
        /// <summary>
        /// sideload device via adb
        /// </summary>

        private void SideloadThread()
        {
            AdbCmd.ExecuteAdbCommand(AdbCmd.FormAdbCommand(adbsideloadcmd));
        }
Пример #10
0
 private void AdbRestoreThread()
 {
     AdbCmd.ExecuteAdbCommand(AdbCmd.FormAdbCommand(adbcommand));
 }
Пример #11
0
 private void AdbBackupThread()
 {
     AdbCmd.ExecuteAdbCommand(AdbCmd.FormAdbCommand(adbcommand));
 }
Пример #12
0
 private void executeCommand(List <uint[]> cmds)
 {
     AdbCmd.ExecuteAdbCommandNoReturn(AdbCmd.FormAdbCommand(getCommand(cmds)));
     //AdbClient.Instance.ExecuteRemoteCommand(getCommand(cmds), device, receiver);
 }