Как мне просто запустить приложение Ubuntu Touch из терминала?

У меня есть файл qml, и я просто хочу ssh на телефон и сделать

qmlscene myfile.qml

Возможно ли это сделать без SDK и пакетов? Просто vim и несколько простых команд, которые могут вписаться в память человека.

2 ответа

Решение

Если у вас уже есть файл qml на телефоне, это довольно просто. Все, что вам нужно сделать, это позвонить qmlscene с дополнительным аргументом.

  1. Начните соединение с вашего рабочего стола / ноутбука с phablet-shell,

  2. Бежать qmlscene с --desktop_file_hint, пример:

    $ qmlscene --desktop_file_hint=/usr/share/applications/dialer-app.desktop $HOME/Documents/myfile.qml 
    

Не было так просто на OTA 10.1 (Ubuntu 15.04), BQ E5, с phablet-shell SSH-соединение, я должен был выполнить эту однострочную командную строку, чтобы заставить ее работать:

APP_ID=com.ubuntu.clock_clock_3.7.456 \
QML2_IMPORT_PATH=/usr/share/click/preinstalled/com.ubuntu.clock/3.7.456/lib/arm-linux-gnueabihf \
QML_IMPORT_TRACE=1 \
/usr/bin/qmlscene \
--desktop_file_hint=/usr/share/click/preinstalled/com.ubuntu.clock/3.7.456/share/applications/ubuntu-clock-app.desktop \
/usr/share/click/preinstalled/com.ubuntu.clock/3.7.456/share/qml/ubuntu-clock-app.qml

Обратите внимание, что когда вы запускаете приложение таким образом, весь его вывод выводится на вызывающий терминал, а в ~/.cache/upstart/application-click-com.ubuntu.clock_clock_3.7.456.log, Должен также запускаться, когда телефон спит, и он блокируется в терминале, и Ctrl-C прекратит его (и его окно на устройстве). QML2_IMPORT_PATH решает

file:///usr/share/click/preinstalled/com.ubuntu.clock/3.7.456/share/qml/ubuntu-clock-app.qml:22 module "Alarm" is not installed
file:///usr/share/click/preinstalled/com.ubuntu.clock/3.7.456/share/qml/ubuntu-clock-app.qml:20 module "WorldClock" is not installed

... см. ошибку #1338979 "Недопустимый вызов qmlscene - недопустимая опция -" I "": Ошибки: notes-app

Обратите внимание, что без --desktop_file_hint, ты получишь:

Loading module: 'libubuntu_application_api_touch_mirclient.so.3.0.0'
UbuntuClientIntegration: connection to Mir server failed. Check that a Mir server is
running, and the correct socket is being used and is accessible. The shell may have
rejected the incoming connection, so check its log file
Aborted
Другие вопросы по тегам