Is it possible to run NodeJs server in android device (like linux devices not android apps).
If possible please help me to do it.
And is it possible to start mongo server on Android device?
My devices:
- RK3288 TV Box (android 4)
- Asus fonepad 7 (android 5 root)
- LG Optimus G (android 4 root)
Important!! I want to start a server app in android. because I have an unused android TV-Box and I want to use it in my home server
And I don't want to use it in APK files (to load html files in WebView s). I need nodejs server not javascript client with CommonJs and RequireJs
You might want to install a chrooted-linux on your android-device, as explained here.
In short, do this:
- prepare linux-image
- do this on any gnu+linux -device.
- create a big file (>1 GB)
- format it as a filesystem (eg. ext2)
- mount it.
- copy a distribution inside of it (e.g. with debootstrap)
- copy loopdevice to android
- mount it (root required)
- maybe install busybox
- attach some directories from the root-device to the host (usually
dev
, dev/pts
, proc
and sys
)
- chroot
- install nodejs inside chroot
note: I have done something similar to my tf301 and it works like a charm. But when I start to use too much memory inside the chroot (e.g. when compiling an android-app), the host will crash. I have not yet experienced those crashes with node and I do not know, if other devices are affected by this.
Install jxcore, as explained here:
Express on Android
The script assumes that Apache Cordova and the Android SDK is installed on your system. If they are not, please refer to individual documentation on how to do this.
Plug an android device into a USB socket (with USB Debugging enabled), unless you want to run the application on the Android Emulator.
Download the script and save it into an empty folder. Run it with a sample folder name as an argument, for example “express sample”:
$ ./install_and_run.sh "express sample"
The Script can be found here.
J2V8 is best solution of your problem. It's run Nodejs application on jvm(java and android).
J2V8 is Java Bindings for V8, But Node.js integration is available in J2V8 (version 4.4.0)
Github : https://github.com/eclipsesource/J2V8
Example : http://eclipsesource.com/blogs/2016/07/20/running-node-js-on-the-jvm/