Tôi có thể phát triển ứng dụng gốc / HTML5 lai cho Điện thoại Ubuntu không?


8

Tôi có thể phát triển một ứng dụng lai được sử dụng cùng với API gốc và HTML5 trong điện thoại Ubuntu không?

Tôi biết rằng có thể phát triển ứng dụng gốc hoặc ứng dụng HTML5.

Tuy nhiên, tôi muốn biết để phát triển một ứng dụng gốc có giao diện người dùng HTML5 (hybrid) trong Ubuntu Phone.


Nếu bạn đang đề cập nhiều hơn chỉ đơn giản là giao diện người dùng dựa trên QML, mà câu trả lời của Salem đã giải quyết, có những câu liên quan đến mã gốc thông qua Apache Cordova, tôi vẫn đang nghiên cứu về Cordova, vì vậy, tôi không có câu trả lời hoàn chỉnh cho bạn, nhưng, ở đó là nguồn để đọc / tải xuống tại đây: git-wip-us.apache.org/repose/asf?p=cordova-ubuntu.git;a=tree
OYRM

Câu trả lời:


10

Tôi không chắc ý của bạn với "hybrid" (ứng dụng C ++ hiển thị ứng dụng web phân phối mã ứng dụng giữa C ++ / QML / javascript?), Nhưng bạn có thể sử dụng thành phần WebView để hiển thị trang web / ứng dụng web trên ứng dụng qml . Điều này cũng hoạt động trên Ubuntu Phone.

Sử dụng ứng dụng đơn giản này bao gồm: "app.qml", "app.html" và "app.js" (vâng tôi biết, "ứng dụng" này khá khập khiễng ...). Điều này chỉ được thử nghiệm với qmlviewer, vì vậy nếu bạn cố chạy nó qua IDE, có lẽ bạn sẽ phải sửa đổi một cái gì đó liên quan đến các đường dẫn tương đối được sử dụng.

ứng dụng.qml

import QtQuick 1.0
import QtWebKit 1.0

Rectangle {
        width: 800
        height: 600
        WebView {
                url: "app.html"
                anchors.fill: parent
                preferredWidth: 800
                preferredHeight: 600
                smooth: false
                settings.developerExtrasEnabled : true 
                settings.javascriptEnabled: true
        }
}

ứng dụng.html

<!doctype html>
<html lang="en">
<head>
        <meta charset="UTF-8">
        <title>Hi</title>
        <style>
        body {
                margin: 20px;
        }
        </style>
</head>
<body>
        <a href="#" id="test_me">Click me!</a>
</body>
<script src="app.js"></script>
</html>

app.js

var x = document.getElementById("test_me");
x.onclick = function(){
        console.log("Hi there");
        new_elem = document.createElement("h2");
        new_elem.textContent = "Hi there!";
        document.getElementsByTagName("body")[0].appendChild(new_elem);
};

Hy vọng nó giúp.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.