簡體   English   中英

Chrome 擴展程序:如何使用串行端口(現在應用程序正在淘汰)?

[英]Chrome extension: how to use serial port (now that apps are sunsetting)?

目標:我正在嘗試編寫一個可以從我的瀏覽器與 Arduino 的 COM 端口通信的小“東西”。

問題:我的第一次嘗試是編寫擴展。 因此,我在清單文件中請求serial權限。 通過開發人員模式加載未打包的擴展時,我收到以下錯誤: 'serial' is only allowed for packaged apps, but this is a extension.

我在這里看到packaged app是一個過時的術語,我想它們只是指Chrome app 現在不幸的是,Chrome 似乎也停止了這些 Chrome 應用程序,正如 這里討論的那樣

問題:那么我應該如何訪問 Chrome 應用程序/擴展程序/您想出的任何新名稱的serial功能?

您可以繼續編寫 chrome 應用程序並使用 chrome.serial API,但使用 NW.js 作為應用程序的運行時。 它支持 Chrome 應用程序 API。 本質上,您只需編寫 Chrome 應用程序,而不是在 Chrome 中打開它,而是在 NW.js 可執行文件中打開它。

https://nwjs.io/

或者您可以使用 Node.js 包(例如 serialport)來訪問您的 COM 端口

https://github.com/EmergingTechnologyAdvisors/node-serialport

在這種情況下,您可以將其編寫為 NW.js 應用程序或 Electron 應用程序。 電子最近很流行。 您可以訪問節點模塊生態系統以及 Chromium - Chrome 網絡瀏覽器的開源部分,因此您仍然可以執行您想要的所有 HTML/JavaScript/CSS。

https://github.com/electron/electron

這也是 Google 建議的路徑之一: https : //developer.chrome.com/apps/migration#native

“Web Serial API”, navigator.serial ,可能是最好的展望方式。 自 chrome 77 以來,它已在chrome://flags#enable-experimental-web-platform-features標志后面可用。它將進入 Origin 試驗 80-82,然后在 83 中發貨。

Web Serial API 允許直接來自漸進式 Web 應用程序的串行接口。 https://codelabs.developers.google.com/codelabs/web-serial/#0有一個很好的教程

您可能應該避免使用僅在 chrome 應用程序中可用的舊版chrome.serial ,因為從 2020 年 6 月開始,將不再支持 Windows、Mac 和 Linux 上的 Chrome 應用程序。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM