1. iOS에서 실행하려면 jxcore를 컴파일하세요
$ mkdir ~/jxcore
$ cd ~/jxcore
$ git 클론 https://github.com/jxcore/jxcore.git
$ cd ~/jxcore/jxcore
$ ./build_scripts/ios-compile.sh
import which module에 문제가 있는 경우 다음 명령문을 통해 python which
를 설치합니다.
sudo easy_install tools/which-1.1.0-py2.7.egg
다른 문제가 발생하는 경우 jxcore로 iOS를 컴파일하기 위한 전제 조건을 참조하고 해당 조치를 취할 수 있습니다.
https://github.com/jxcore/jxcore/blob/master/doc/HOW_TO_COMPILE.md
* GCC 4.2 이상(SpiderMonkey 빌드 4.7의 경우)
* 파이썬 2.6 또는 2.7
* GNU Make 3.81 이상
* libexecinfo(FreeBSD 및 OpenBSD에만 해당)
* SpiderMonkey의 경우: 'which' Python 모듈(sudo easy_install tools/which-1.1.0-py2.7.egg)
2. Mac에 jxcore 설치
$ ./구성
$ sudo make install
3. cordova 프로그램을 생성합니다. cordova가 설치되어 있지 않으면 직접 설치할 수 있습니다.
$ cordova는 hello com.example.hello HelloWorld를 생성합니다
$ cd 안녕하세요
4. jxcore-cordova 플러그인 다운로드 및 설치
$ git clone https://github.com/jxcore/jxcore-cordova
jxcore-cordova의 템플릿 index.html 사용
$ cp ./jxcore-cordova/sample/www/index.html ./www/
첫 번째 단계에서 iOS에서 실행하기 위해 컴파일된 jxcore 패키지를 복사합니다
$ cp -r ~/jxcore/jxcore/out_ios/ios/bin jxcore-cordova/io.jxcore.node/
5. Cordova iOS 플랫폼 추가
$ 코르도바 플랫폼에 iOS 추가
$ cordova 플러그인 추가 jxcore-cordova/io.jxcore.node/
$ 코르도바 빌드
$ 코르도바 실행 iOS
빌드 오류가 발생하면 "C는 기본 인수를 지원하지 않습니다."
일반적으로 기본값을 제거하면 문제가 해결됩니다.
할 것이다
JXCORE_EXTERN(무효)
JX_SetString(JXValue *value, const char *val, const int32_t 길이 = 0);
으로 수정
코드 복사 코드는 다음과 같습니다.
JXCORE_EXTERN(무효)
JX_SetString(JXValue *value, const char *val, const int32_t length)
그냥 다시 빌드하세요
6. 이때 Cordova 실행 인터페이스를 볼 수 있습니다.
7. Resources/jxcore_app/app.js에 nodejs 서버를 추가하세요
app.js 끝에 다음 코드를 추가하세요
함수 getIP() {
var os = require('os');
var nets = os.networkInterfaces()
console.log(네트)
for ( nets의 var a) {
var ifaces = nets[a]
for (var o in ifaces) {
If (ifaces[o].family == "IPv4" && !ifaces[o].internal) { return ifaces[o].address }
~
~
null 반환;
}
var ip = getIP()
if (!ip) {
console.error("네트워크에 연결해야 합니다!")
반품
}
var http = require('http')
http.createServer(function(req, res) {
res.writeHead(200, {
'콘텐츠 유형': '텍스트/일반'
});
var cur_client = "";
If(req.connection && req.connection.remoteAddress) {
console.log(req.connection.remoteAddress)
~ >
} else if(req.headers) {
console.log("요청 헤더 X-Forwarded-For");
console.log(req.headers['X-Forwarded-For'])
Cur_client = Req.headers ['X-FORWARDED-FOR']
~
cordova('log').call('client( ' cur_client ' ) Come')
res.end('안녕하세요 ' cur_client ', 저는 아이폰 앱의 서버입니다(' ip '). ' Date.now() 'n');
}).listen(1337, ip)
console.log('http://'ip ':1337/'에서 실행 중인 서버
프로그램을 실행하면 xcode 로그 정보에서 아이폰의 IP를 확인할 수 있으며, 이후 웹페이지를 통해 웹서핑을 할 수 있습니다.