Beispiel #1
0
        public MainForm(AndroidDevice device)
        {
            this.device = device;
            minicap     = new MinicapStream();
            //minitouch = new MiniTouchStream(device);
            InitializeComponent();

            //判断设备方向来初始化界面SIZE
            if (device.Orientation == 90)
            {
                this.Width  = device.VirtualHeight + 40;
                this.Height = device.VirtualWidth + 60;
                this.deviceImageBox.Width  = device.VirtualHeight;
                this.deviceImageBox.Height = device.VirtualWidth;
            }
            else
            {
                this.Width  = device.VirtualWidth + 40;
                this.Height = device.VirtualHeight + 60;
                this.deviceImageBox.Width  = device.VirtualWidth;
                this.deviceImageBox.Height = device.VirtualHeight;
            }
            this.DoubleBuffered = true;
            //注册UpdatePictureBox事件,用于监听图片流队列的读取方法以更新界面图像
            minicap.Update += new Minicap.MinicapEventHandler(UpdatePictureBox);
            Thread thread = new Thread(minicap.ReadImageStream);

            thread.Start();
        }
Beispiel #2
0
        public void InitMinicap()
        {
            adbByDevice("forward --remove tcp:1313").Wait();

            minicap = new MinicapStream();
            var MINICAP_FILE_PATH   = Path.Combine(MiniLibPath, $"minicap/bin/{abi}/minicap");
            var MINICAPSO_FILE_PATH = Path.Combine(MiniLibPath, $"minicap/shared/android-{sdk}/{abi}/minicap.so");


            pushFile(MINICAP_FILE_PATH, jarpath);
            pushFile(MINICAPSO_FILE_PATH, jarpath);

            adbByDevice($"shell chmod 777 {jarpath}/minicap").Wait();


            //Shell(adbFile, "forward --remove-all").Wait();

            string command = $"forward tcp:{minicap.PORT} localabstract:minicap";

            adbByDevice(command).Wait();
        }
 private void update()
 {
     if (fast_motion)
     {
         bool isstarted = devices.IsMiniCapStart();
         xiaomi.log("isstarted", isstarted.ToString(), null);
         if (!isstarted)
         {
             Thread minicaptask = new Thread(devices.StartMinicapServer);
             minicaptask.Start();
             //devices.StartMinicapServer();
             minicap         = new MinicapStream();
             DoubleBuffered  = true;
             minicap.Update += new MinicapEventHandler(UpdatePictureBox);
             Thread thread = new Thread(minicap.ReadImageStream);
             thread.Start();
         }
     }
     else // if (!fast_motion)
     {
         Disp();
     }
 }