だから私はこれがかなり多く質問されていることを知っています。これらの質問の例として正確に言うと:
しかし、提示されたすべてのオプションには問題があります。
私のデバイスに他のOSをインストールしないようにしたいので、私は私の通常のデバイスでそれを実行したいのです。
JXCoreの作業は先月中止され、(おそらくその結果として)コンパイルできなかった( jxcore-cordovaをインストールできない を参照)
過去にこれらの質問が投稿されてから「最良の選択肢」としてJXCoreは現在使用できないようです。
Androidデバイス上でnode.jsアプリケーション(私の場合はサーバー)を実行する方法はありますか?
node.Jsサーバーを使ってWebAppを作成し、インターネットに接続しなくても携帯電話からローカルで起動できるバージョンが必要になりました。つまり、サーバーはAndroid携帯で動作する必要があります。
私はただちょっと立ち寄った瞬間- Termux を使うとAndroidデバイスにNodeJSをインストールできます。
基本的にはうまくいくようです Websocket Speed Test 私は手元に持っていました。それによって提供されるhttpは、ローカルとネットワークの両方でアクセスできます。
があります インストールプロセスを説明する中程度の投稿
基本的には:1. termuxをインストールします2. apt nodejsをインストールします3.それをノードにします!
私が遭遇した一つの制限 - それは共有フォルダーがモジュールをインストールするのに必要な許可を持っていないようです。それは単なるファイル許可のことかもしれません。プライベートアプリのストレージは問題なく動作します。
素晴らしい新しいアプリケーション
あなたの電話を根絶する必要はなく、あなたはどこからでもあなたのjsファイルを実行することができます。
ノードjs 8への更新命令(非同期待ち)
Node.js v8.3.0 armのZipファイルをダウンロードして解凍します。
'node'をAndroidのSDカード(/ sdcardまたは/ sdcard/path/to/...)にコピーします。
シェルを開く(アプリのメニューでチェックアウト)
cd /data/user/0/io.tmpage.dorynode/files/bin(または、cd && cd .. && cd files/binと入力します)
rMノード
cp/sdcard/node.
(+ xノードをchmodする
( https://play.google.com/store/apps/details?id=io.tempage.dorynode&hl=ja )
J2V8はあなたの問題の最良の解決策です。それはjvm(JavaとAndroid)でNodejsアプリケーションを実行します。
J2V8はV8のJavaバインディングですが、Node.js統合はJ2V8(バージョン4.4.0)で使用可能です。
Github: https://github.com/eclipsesource/J2V8
例: http://eclipsesource.com/blogs/2016/07/20/running-node-js-on-the-jvm/
モバイルアプリの場合は Node.js を使用できます。
それはarmeabi-v7a、x86、arm64-v8a、x86_64用のビルド済みバイナリで、Androidデバイスとシミュレータ上で動作します。 iOS上でも動作しますが、これはこの質問の範囲外です。
JXcoreと同様に、アプリと同じプロセスでNode.jsエンジンを専用スレッドでホストするために使用されます。 JXcoreとは異なり、これは基本的に純粋なNode.jsであり、ライブラリとして構築され、Android上で実行するための移植性がいくつか修正されています。これは、メインラインNode.jsを使ってプロジェクトを最新の状態に保つことがはるかに簡単であることを意味します。
Cordova および React Native のプラグインも利用できます。プラグインは、それらのフレームワークのJavaScript側とNode.js側の間の通信層を提供します。また、モジュールのパッケージ化やビルド時のネイティブモジュールのクロスコンパイルなど、いくつかのことを自動的に処理することで開発を簡素化します。
完全な開示:私はモバイルアプリのNode.jsを開発している会社で働いています。
android用NodeJSをビルドする方法のチュートリアル https://github.com/dna2github/dna2oslab/tree/master/Android/build
いくつかのバージョンv0.12、v4、v6、v7があります
Android上でコンパイル済みバイナリを実行するのは簡単です。たとえば、コンパイル済みNginxを実行します。 https://github.com/dna2github/dna2mtgol/tree/master/fileShare
NginxをNodeJSに置き換えるようにコードを修正するだけです。 Androidサービスを使用してバックエンドでノードjsサーバーを実行した方が良いです。