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(); }
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(); } }