그래서 저는 이것이 많은 질문을 받았다는 것을 압니다. 예를 들어 다음 질문에서 정확히 말하면 :
제시된 모든 옵션에는 문제가 있습니다.
-
일반 기기에서 실행하고 싶어서 내 기기에 다른 OS를 설치하는 것을 피하고 싶습니다.
-
JXCore에 대한 작업이 지난 달에 중단되었으며 (결과적으로) 컴파일 할 수 없습니다 ( Ca n’t install jxcore-cordova 참조 ).
- NodeJs Anode 의 Android 포트는 2014 년 이후로 작업되지 않았으며 그 당시에는 실제로 유지 관리되지 않았습니다.
- 내가 링크 한 두 번째 스레드의 두 번째 답변은 현재 Android 용 공식 노드 배포가 있지만 최신 dist 의 Browse-Website 링크를 제외 하고 실제로 사용하는 방법에 대한 정보를 찾을 수 없습니다.
- 나는 또한 이것을 보았지만 별도의 앱으로 만들고 싶습니다.
이러한 질문이 게시 된 이후로 과거에는 “최상의 옵션”인 JXCore를 사용할 수없는 것 같습니다
. Android 장치에서 node.js 애플리케이션 (제 경우에는 서버)을 실행할 수있는 방법이 있습니까?
왜 이것이 필요한지 궁금하다면 Node.Js 서버로 웹 애플리케이션을 만들었고 이제 인터넷 연결 없이도 휴대 전화에서 로컬로 실행할 수있는 버전을 원합니다. 이는 서버가 Android 휴대폰에서 실행되어야 함을 의미합니다.
답변
방금 놀라운 순간을 보냈습니다. Termux를 사용하면 Android 장치에 NodeJS를 설치할 수 있습니다!
내가 가지고 있던 기본 Websocket 속도 테스트 에서 작동하는 것 같습니다 . 제공되는 http는 로컬 및 네트워크에서 모두 액세스 할 수 있습니다.
기본적으로 : 1. termux를 설치합니다. 2. apt 설치 nodejs 3. 노드를 설치합니다!
한 가지 제한 사항이 있습니다. 공유 폴더에 모듈을 설치하는 데 필요한 권한이없는 것 같습니다. 파일 권한 문제 일 수 있습니다. 개인 앱 저장소는 잘 작동합니다.
답변
훌륭한 새 응용 프로그램
은 휴대 전화를 루팅 할 필요가 없으며 어떤 곳에서든 js 파일을 실행할 수 있습니다.
- node.js 런타임 (Android에서 ES2015 / ES6, ES2016 자바 스크립트 및 node.js API 실행)
- 문서에서 실행되는 API 문서 및 인스턴트 코드
- 구문 강조 코드 편집기
- npm 지원
- 리눅스 터미널 (toybox 0.7.4). shell의 node.js REPL 및 npm 명령 (/ sdcard에서 npm을 실행하는 경우 ‘–no-bin-links’옵션 추가)
- StartOnBoot / LiveReload
- 기본 node.js 바이너리 및 npm이 포함되어 있습니다. 온라인 상태 일 필요가 없습니다.
노드 js 8에 대한 업데이트 지침 (비동기 대기)
-
node.js v8.3.0 arm zip 파일을 다운로드하고 압축을 풉니 다.
-
안드로이드의 sdcard (/ sdcard 또는 / sdcard / path / to / …)에 ‘node’복사
-
셸을 엽니 다 (앱 메뉴에서 확인)
-
cd /data/user/0/io.tmpage.dorynode/files/bin (또는 cd && cd .. && cd files / bin 입력)
-
rm 노드
-
cp / sdcard / node.
-
(chmod a + x 노드
( https://play.google.com/store/apps/details?id=io.tempage.dorynode&hl=ko )
답변
모바일 앱에 Node.js를 사용할 수 있습니다 .
armeabi-v7a, x86, arm64-v8a, x86_64 용으로 사전 빌드 된 바이너리를 사용하여 Android 기기 및 시뮬레이터에서 작동합니다. iOS에서도 작동하지만이 질문의 범위를 벗어납니다.
JXcore와 마찬가지로 전용 스레드에서 앱과 동일한 프로세스에서 Node.js 엔진을 호스팅하는 데 사용됩니다. JXcore와는 달리 기본적으로 Android에서 실행되는 몇 가지 이식성 수정 사항이있는 라이브러리로 빌드 된 순수한 Node.js입니다. 즉, 메인 라인 Node.js로 프로젝트를 최신 상태로 유지하는 것이 훨씬 더 쉽습니다.
Cordova 및 React Native 용 플러그인 도 사용할 수 있습니다. 플러그인은 해당 프레임 워크의 JavaScript 측과 Node.js 측 사이에 통신 계층을 제공합니다. 또한 빌드시 모듈 패키징 및 네이티브 모듈 크로스 컴파일과 같은 몇 가지 사항을 자동으로 처리하여 개발을 단순화합니다.
전체 공개 : 저는 모바일 앱용 Node.js를 개발하는 회사에서 일합니다.
답변
J2V8은 문제의 최상의 솔루션입니다. jvm (java 및 android)에서 Nodejs 애플리케이션을 실행합니다.
J2V8은 V8 용 Java Bindings이지만 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/
답변
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 서버를 실행하는 것이 좋습니다.