添加nano pc t4的基于命令行运行的qt的Web启动界面

TangShanKaiPing
wanggang 6 years ago
parent e401338a2c
commit ab878b4290

@ -50,7 +50,7 @@ namespace Demo
if (Device.RuntimePlatform == Device.Android)
{
media.AddOption(new MediaConfiguration().EnableHardwareDecoding());
media.AddOption(":network-caching=100");
media.AddOption(":network-caching=200");
//media.AddOption(":clock-jitter=0");
//media.AddOption(":clock-synchro=0");
}

@ -770,7 +770,7 @@
</ul>
</div>
<template v-for="data in Device.Data">
<div class="block" v-if="isChart(data)">
<div class="block" v-if="data.Type === 'Int' || data.Type === 'Float'">
<div class="col">
<canvas :id="data.Key" :data-label="data.Name" class="chart"></canvas>
</div>

@ -0,0 +1,2 @@
[root]
url=http://127.0.0.1:8002/index.html

@ -0,0 +1,109 @@
/****************************************************************************
**
** Copyright (C) 2016 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the examples of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:BSD$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** BSD License Usage
** Alternatively, you may use this file under the terms of the BSD license
** as follows:
**
** "Redistribution and use in source and binary forms, with or without
** modification, are permitted provided that the following conditions are
** met:
** * Redistributions of source code must retain the above copyright
** notice, this list of conditions and the following disclaimer.
** * Redistributions in binary form must reproduce the above copyright
** notice, this list of conditions and the following disclaimer in
** the documentation and/or other materials provided with the
** distribution.
** * Neither the name of The Qt Company Ltd nor the names of its
** contributors may be used to endorse or promote products derived
** from this software without specific prior written permission.
**
**
** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
**
** $QT_END_LICENSE$
**
****************************************************************************/
#include "browser.h"
#include "browserwindow.h"
#include "webview.h"
#include <QApplication>
#include <QWebEngineSettings>
#include <QSettings>
QUrl commandLineUrlArgument()
{
const QStringList args = QCoreApplication::arguments();
for (const QString &arg : args.mid(1)) {
if (!arg.startsWith(QLatin1Char('-')))
return QUrl::fromUserInput(arg);
}
return QUrl(QStringLiteral("http://127.0.0.1:8002/index.html"));
}
int main(int argc, char **argv)
{
/*
QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
QCoreApplication::setAttribute(Qt::AA_UseHighDpiPixmaps);
QApplication app(argc, argv);
app.setWindowIcon(QIcon(QStringLiteral(":AppLogoColor.png")));
QWebEngineSettings::defaultSettings()->setAttribute(QWebEngineSettings::FullScreenSupportEnabled, true);
QWebEngineSettings::defaultSettings()->setAttribute(QWebEngineSettings::PluginsEnabled, true);
QWebEngineSettings::defaultSettings()->setAttribute(QWebEngineSettings::WebGLEnabled, true);
QWebEngineSettings::defaultSettings()->setAttribute(QWebEngineSettings::JavascriptEnabled, true);
QWebEngineSettings::defaultSettings()->setAttribute(QWebEngineSettings::JavascriptCanOpenWindows, false);
QWebEngineSettings::defaultSettings()->setAttribute(QWebEngineSettings::ShowScrollBars, false);
QUrl url = commandLineUrlArgument();
Browser browser;
BrowserWindow *window = browser.createWindow();
window->currentTab()->setUrl(url);
return app.exec();
*/
QApplication app(argc, argv);
QWebEngineSettings::defaultSettings()->setAttribute(QWebEngineSettings::FullScreenSupportEnabled, true);
QWebEngineSettings::defaultSettings()->setAttribute(QWebEngineSettings::PluginsEnabled, true);
QWebEngineSettings::defaultSettings()->setAttribute(QWebEngineSettings::WebGLEnabled, true);
QWebEngineSettings::defaultSettings()->setAttribute(QWebEngineSettings::JavascriptEnabled, true);
QWebEngineSettings::defaultSettings()->setAttribute(QWebEngineSettings::JavascriptCanOpenWindows, false);
QWebEngineSettings::defaultSettings()->setAttribute(QWebEngineSettings::ShowScrollBars, false);
QSettings settings("./config.ini", QSettings::IniFormat);
settings.setIniCodec("UTF8");
QString url = settings.value("/root/url").toString();
QWebEngineView *view = new QWebEngineView();
view->setUrl(QUrl(url));
view->show();
return app.exec();
}

@ -0,0 +1,13 @@
#!/bin/bash
. /usr/bin/setqt5env-xcb
cd /opt/qt5-browser
GEOMETRY=800x1280
HDMISTATUS=`cat /sys/class/drm/card0-HDMI-A-1/status`
if [ x$HDMISTATUS = x"disconnected" ]; then
GEOMETRY=`cat /sys/class/drm/card0-eDP-1/mode | cut -d'p' -f1`
else
GEOMETRY=`cat /sys/class/drm/card0-HDMI-A-1/mode | cut -d'p' -f1`
fi
startx ./simplebrowser --no-sandbox -geometry $GEOMETRY
Loading…
Cancel
Save