13

HTML5とJavaScriptでUIを作成しました。この実装を選択したのは、AndroidChromeとWindows8RTの両方で同じコードを共有できるようにするためです。

次の目的は、USBHIDにデータを書き込むことです。通信しているデバイスはHIDとして扱われます。USB RAWデバイスではなくHIDデバイスに書き込む方法がある場合に備えて、この部分について説明します。

私はその問題について多くの研究をしました。しかし、HTML5の仕様は頻繁に変更されているため、何かを見逃した可能性があります。

**とにかく、AndroidおよびWindows 8 RTのUSBデバイスにアクセスするための共通コードを共有するために使用できる言語または実装はありますか?

2つを共有する方法がない場合は、AndroidでのみUSB通信を取得することを提案してはどうでしょうか。**


以下は私の研究と結論です。

  • Silverlight:サポートされていません。Webプラグインに関しては、Windows8RTまたはAndroidではサポートされていません

  • フラッシュ:可能なオプション。Android 4.1(Jelly Bean)のリリースにより、Androidのサポートが削除されましたが、両方のオペレーティングシステムでサポートされています。

  • HTML5:サポートされていません

  • GamePad APIを見ましたが、ゲームパッドからの読み取りのみをサポートしているようです。

  • デバイスタグを見ましたが、このタグは現在のドラフトには存在しません。JavaScriptでは「ナビゲーター」オブジェクトが置き換えられると読みましたが、まったく違うようです。また、デバイスはビデオとオーディオの取得のみを対象としています

  • JavaScript:サポートされていません。私の理解では、これはセキュリティ上のリスクになるためです。

  • Chromeパッケージアプリ:サポートされていません。Windows8RTでのサポートについてはよくわかりません。ただし、AndroidChromeでもサポートされていません。

  • 私が必要としていることを正確に実現するUSB​​APIが存在しますが、APIはパッケージ化されたアプリでのみ使用できます。

  • Javaアプレット:サポートされていません。Windows8RTでのサポートについてはよくわかりません。ただし、AndroidChromeでもサポートされていません。

  • USBデバイスとの通信方法に関して利用可能な多くのリソースがあります。ただし、Javaアプレットはスマートフォンではサポートされていないため、サポートされなくなることになります。

  • いくつかの役立つ投稿

  • ASP.NETのシリアルポートまたはUSBポートとデータを送受信するにはどうすればよいですか?

  • クロスブラウザクロスOS用のWebアプリケーションからUSBにアクセスすることは可能ですか?

  • USB、LPT、およびCOMデバイスを制御するためのJavaScript APIを提供することは可能ですか?

4

5 に答える 5

8

私は実際にこれに似たようなことをする方法について考えました...

USB デバイスが接続されているコンピュータを制御できる場合の確実な方法の 1 つを次に示します。

USB デバイスを搭載したコンピューターで、Apache や PHP などの Web サーバーを実行します。localhostのみをリッスンします。

次に、表示されている HTML ページで、localhost/somescript.php (またはCGIや cfm など) への Ajax ポストを実行します。

PHP/CGI スクリプトで、USB デバイスと通信し、何かが起こったことを示す JSON 文字列をブラウザーに返します。

もう 1 つの方法は、カスタム URL プロトコルを使用することです。実行可能ファイルを作成し、それをカスタム URL プロトコルと共にクライアント コンピュータに「インストール」します。

次に、カスタム URL プロトコルを使用してブラウザーから実行可能ファイルを呼び出すことができます。

于 2013-03-21T02:41:27.307 に答える
2

制御したい USB デバイスがバーコード プリンターの場合は、jZebraを使用できます。

これは、ローカルに接続されたプリンターと直接通信するアプレットです。

于 2013-04-12T15:40:53.620 に答える
2

もう 1 つの代替 Web ソケットがあります。ローカル システムの USB デバイスにアクセスする Web ソケット サーバーを作成します。

Web Application から Web Socket を使用して Web サーバーに接続します。Web Socket には標準の Api があります。

このようなことができます

  var host = "wss://localhost:25000/test";

  Websokcet ws = new WebSocket(host);

RFC 6455を使用して Web sokcet サーバーを作成できます

古いブラウザの場合は、http サーバーも考えられます。

于 2013-11-15T07:41:01.267 に答える
2

JSFSをご覧ください。これは Chris_vr のアプローチと同様に機能し、すでに実用的なソリューションです。

https://github.com/jsfsproject/jsfs . 無料で、GPL の下でライセンスされています。

于 2013-12-06T14:06:46.330 に答える