Запуск NodeJS-додатки на Android

Без сумніву, вам сподобається запускати NodeJS на своєму Android-пристрої. Завдяки емулятор терміналу і Linux-оточення для Android, розробка веб-додатків на смартфоні перестане бути для вас проблемою.



Termux
Termux — це безкоштовне додаток, який можна встановити прямо з магазину Google Play. Потрібна версія Android 5.0 або пізнішої. Не вимагає root-прав.
При відкритті Termux вас вітає інтерфейс командного рядка. Рекомендується перевірити наявність оновлень відразу після установки Termux. Введіть таку команду та натисніть клавішу Enter:
$ apt update

Termux поставляється в мінімальної базової комплектації, так що ви повинні встановити coreutils для повноцінного використання команд командного рядка, таких як mv, ls та ін
$ apt install coreutils


Termux зберігає дані у власному сховищі даних, тобто папка $HOME знаходиться всередині приватної області Termux, як у звичайного Android додаток. Видалення Termux викличе втрату цих даних. Якщо ви збираєтеся там зберігати важливі файли, використовуйте termux-setup-storage, щоб забезпечити збереження даних у зовнішньому сховищі (наприклад на SD-карті).

Отже, давайте створимо папку для нашого додатка і перейдемо в цей каталог:


Клавіатура
У цей момент ви, швидше за все, відчуєте деякі проблеми при роботі в консолі зі стандартною клавіатурою. Щоб обійти їх, я встановив хакерську клавіатуру з Google play. Це сенсорна клавіатура, яка має все необхідне для написання коду — Esc, Tab і клавіші зі стрілками.


Nano

Для написання коду нам знадобиться будь-який текстовий редактор, доступний в консолі. Ви можете встановити Emacs або Vim, але для простоти можна використовувати nano. Встановимо його:
$ apt install nano

Створимо файл app.js і відкриємо його в редакторі:
$ touch app.js 
$ nano app.js

Напишемо який-небудь простий NodeJS-код для перевірки:
console.log('NodeJS running on Android');

Щоб вийти з nano, потрібно натиснути Ctrl+X, написати 'yes' і натиснути Enter.


NodeJS
Тепер саме час встановити NodeJS. Зробити це дуже просто:
$ apt install nodejs

Тепер ми можемо нарешті запустити наш скрипт:
$ node app.js



Express

Разом з NodeJS нам доступний пакетний менеджер npm. Давайте скористаємося ним:
$ npm init
$ npm install express --save
$ nano app.js

Відкриємо app.js і напишемо/скопи-пастим туди наступний код:
var express = require('express'),
app = express(),
port = Number(process.env.PORT || 8080);

app.get('/', function(req, res) {
res.send('Express is working');
});

app.слухати(port, function() {
console.log('Listening on port' + port);
});



$ node app.js

Це має вивести на консоль номер порту на якому відповідає сервер. Якщо ви відкриєте http://localhost:8080/ в браузері, то побачите на сторінці наступний текст:

Nodemon

Щоб уникнути перезавантаження сервера вручну кожен раз при зміні файлу app.js ми можемо встановити nodemon. Nodemon — це утиліта, яка буде відслідковувати зміни у вашому коді і автоматично перезавантажити сервер.
$ npm install nodemon --save-dev

Тепер ви можете запустити сервер з допомогою команди nodemon замість node:
$ nodemon app.js

Git

Навіть з хакерською клавіатурою писати код на сенсорному екрані не дуже зручно. Швидше за все, ви пишіть свій код в набагато більш зручних місцях і зберігайте його в репозиторії. Встановимо git:
$ apt install git

Тепер ви можете запускати git команди на зразок git push, git pull і т. д. без будь-яких помилок.

MongoDB

На жаль, у мене не вийшло запустити MongoDB-сервер на Android. В якості альтернативи можна використовувати хмарні сервіси типу MongoLab або задовольнятися чимось на зразок NeDB.

См. також:

Building a Node.js application on Android
Termux is the ONE for Android
Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.