Saya sedang membuat halaman web sekarang dan saya bertanya-tanya apakah mungkin untuk memasukkan perintah dalam HTML yang akan membuka aplikasi Ubuntu yang diinstal seperti Chromium, atau jendela terminal, atau Nautilus.
Apakah hal seperti ini mungkin? Terima kasih!
Jawaban:
Ya, Anda bisa dengan menambahkan pengendali protokol baru di Ubuntu Anda. Metode berikut akan menunjukkan kepada Anda cara mendaftar proses membuka aplikasi sebagai
app://[application_name]
pengendali protokol di Ubuntu.1. Buat skrip peluncur aplikasi
Dalam terminal run:
Perintah ini akan membuat
bin
direktori dihome
folder Anda jika Anda belum memilikinya.Setelah lari:
Ini akan membuat file baru
open_app.sh
di gedit.Salin dan rekatkan skrip berikut ke file yang baru dibuat:
Simpan file dan tutup.
Kembali ke terminal dan jalankan:
untuk memberikan akses eksekusi untuk skrip.
2. Buat file .desktop untuk peluncur aplikasi
Sekarang Anda harus membuat peluncur .desktop untuk skrip di atas, dan beri tahu Ubuntu untuk menggunakan peluncur ini sebagai
app://
penangan protokol. Buat/usr/share/applications/appurl.desktop
file menggunakan perintah berikut:dan tambahkan konten berikut:
Simpan file dan tutup.
3. Refresh database tipe mime
Dalam file di atas, pengendali skema
MimeType=x-scheme-handler/app;
register barisapp://
, tetapi untuk membuatnya bekerja kita harus memperbarui cache database tipe mime dengan mengeksekusi perintah:4. Tes dari terminal
Sekarang semuanya harus bekerja. Untuk menguji apakah ia bekerja dari terminal, jalankan misalnya perintah ini:
4. Uji dari browser menggunakan HTML
Anda dapat menguji dari browser dengan menggunakan misalnya halaman web HTML berikut:
Hasil:
sumber
app://
penangan skema. Menggunakanexec()
fungsi dari PHP, misalnya, skrip itu dapat dibuat untuk dijalankan di browser.radu
nama Anda diappurl.desktop
. Seperti:Exec=/home/{YOUR NAME HERE}/bin/open_app.sh %u
app://shell-exec myscript.sh
mana shell-exec hanyalah sebuah skrip lain (#!/bin/sh "$@" exec "$SHELL"
)Ya, ini disebut "pengendali protokol berbasis web". Anda perlu Chrome 13 atau Firefox 3.0 atau lebih tinggi. Saya telah melihatnya digunakan untuk membuka LibreOffice.
Baik Mozilla maupun updates.html5rocks memiliki penjelasan tentang cara kerjanya. (Buka di Chrome / Chromium
chrome://settings/handlers
dan itu akan menampilkan daftar penangan saat ini. Firefox akan mencantumkannya diabout:config
.)Bagian dari tautan 1:
Mendaftar
Menyiapkan aplikasi web sebagai pengendali protokol bukanlah proses yang sulit. Pada dasarnya, aplikasi web menggunakan registerProtocolHandler () untuk mendaftar sendiri dengan browser sebagai penangan potensial untuk protokol yang diberikan. Sebagai contoh:
Di mana parameternya adalah:
Ketika browser mengeksekusi kode ini, itu akan menampilkan prompt kepada pengguna, meminta izin untuk memungkinkan aplikasi web untuk mendaftar sebagai penangan untuk protokol. Firefox menampilkan prompt di area bilah notifikasi.
Contoh
sumber
scheme
terbatas hanya beberapa. Solusi yang diterima akan memberikan resolusi yang lebih baik (tentu saja dengan beberapa penyesuaian sesuai kebutuhan).