Проблема с QtWebkit и QML в приложении PyQt5 Ubuntu для устройств (Ubuntu Touch)
У меня проблемы с qtwebkit в Ubuntu для устройств (Nexus 10) при использовании pyqt5, элемент webview не отображается, и приложение закрывается. Но если я тестирую тот же самый файл.qml с qmlscene, он работает, но веб-просмотр имеет полноэкранный размер.
Если я прокомментирую строки высоты и ширины, приложение python продолжает работать, но с белым экраном.
Это файл testQt5.py:
import sys
from PyQt5.QtCore import QUrl
from PyQt5.QtWidgets import QApplication
from PyQt5.QtQuick import QQuickView
app = QApplication(sys.argv)
view = QQuickView()
view.setSource(QUrl("file:///home/phablet/Documents/GUIWK.qml"))
view.show()
app.exec()
GUIWK.qml файл:
import QtQuick 2.0
import QtWebKit 3.0
import Ubuntu.Components 0.1
MainView {
width: units.gu(120)
height: units.gu(80)
Rectangle {
id: content
anchors.fill: parent
WebView{
height: content.height
width: content.width
id: webview
url: "http://www.google.com"
}
}
}
Файл testQt5.desktop:
[Desktop Entry]
Encoding=UTF-8
Version=1.0
Type=Application
Terminal=false
#Exec=python3 /home/phablet/Documents/testQt5.py
Exec=/usr/bin/qmlscene $@ /home/phablet/Documents/GUIWK.qml
Icon=qmlscene
Name=testQt5
X-Ubuntu-Touch=true
Я запускаю приложение, но оно не показывает ничего особенного в файле журнала в ~/.cache/upstart:
creating surface at (0, 64) with size (2560, 1536) with title 'Window 1'
1 ответ
Решение
QtWebKit не поддерживается API в SDK для использования на телефонах. Вам нужно использовать оксид вместо.
Вы можете сделать это с:
импорт com.canonical.Oxide 1.0
Он предоставляет в основном тот же API, что и QtWebKit.