Я покупал. Через гугл легко находится варезный, но версии 1.2. Последняя 1.4.
Дать скрипт оказалось не так и просто — он еще с десяток всяких вызывал.
Переписал без использования дополнительных скриптов, не факт что оно сходу заработает, но логика понятна — надеюсь разберетесь.
Скрипт
@echo off
setlocal
set server_config=/data/data/com.vmlite.vncserver/shared_prefs/com.vmlite.vncserver_preferences.xml
set server_bin=vmlitevncserver
set server_gui=com.vmlite.vncserver/.MainActivity
set xml=tmp.xml
set port=10591
set password=!!!password here!!!
pushd %~dp0
echo Waiting for Device
adb.exe wait-for-device
rem возьмем реальный IP
for /f "tokens=2 delims=/ " %%i in ('adb.exe shell ip addr show dev usb0 ^| find "inet "') do set ip=%%i
rem adbd должен быть запущен от root
rem иначе
rem копировать в /tmp
rem su
echo pull %server_config%
adb.exe pull %server_config% %xml%
rem XML Starlets
xml.exe ed --inplace --update "/map/string[@name='port']" -v %port% %xml%
xml.exe ed --inplace --update "/map/string[@name='password']" -v %password% %xml%
echo push %server_config%
adb.exe push %xml% %server_config%
del %xml%
echo Restart VNC server
adb.exe shell killall %server_bin%
adb.exe shell am start -S -W %server_gui%
rem -S restart application
rem -W wait for start
:loop
echo Send Up key
adb.exe shell input keyevent 19
echo Send Enter key
adb.exe shell input keyevent 66
echo Send Back button
adb.exe shell input keyevent 4
echo Wait for VNC server
rem NMap
nping.exe --hide-sent -c 1 --unprivileged --tcp-connect -p%port% %ip% || (
rem на этот раз ждать не будем
rem сразу пошлем кнопки
rem обход Go Locker
echo Show VNC Server GUI
adb.exe shell am start %server_gui%
goto :loop
)
rem todo: com.vmlite.vncserver.ACTIVITY_UPDATE
:connect
rem TightVNC
start "" tvnviewer.exe -host=%ip% -port=%port% -password=%password%
popd
Дать скрипт оказалось не так и просто — он еще с десяток всяких вызывал.
Переписал без использования дополнительных скриптов, не факт что оно сходу заработает, но логика понятна — надеюсь разберетесь.