苹果手机搭建php服务器,iPhone手机上搭建nodejs服务器步骤方法 小灰灰 2023-01-17 11:53 694阅读 0赞 一、为在ios上面运行,编译jxcore $ mkdir ~/jxcore $ cd ~/jxcore $ git clone https://github.com/jxcore/jxcore.git $ cd ~/jxcore/jxcore $ ./build\_scripts/ios-compile.sh 如果出现import which的module not found问题, 那就通过下面语句安装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 or newer (for SpiderMonkey builds 4.7+) \* Python 2.6 or 2.7 \* GNU Make 3.81 or newer \* libexecinfo (FreeBSD and OpenBSD only) \* for SpiderMonkey : 'which' python module (sudo easy\_install tools/which-1.1.0-py2.7.egg) 二、 在mac上安装jxcore $ ./configure $ sudo make install 三、 创建cordova程序,如果没有安装cordova,可以自行安装。 $ cordova create hello com.example.hello HelloWorld $ cd hello 四、下载安装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/ 五、添加cordova的ios platform $ cordova platforms add ios $ cordova plugin add jxcore-cordova/io.jxcore.node/ $ cordova build $ cordova run ios 如果build出错,"C does not support default arguments" 只需将默认值去掉一般就会解决问题。 将 JXCORE\_EXTERN(void) JX\_SetString(JXValue \*value, const char \*val, const int32\_t length = 0); 修改为 JXCORE\_EXTERN(void) JX\_SetString(JXValue \*value, const char \*val, const int32\_t length); 重新build即可 六、此时应该可以看到cordova的运行界面。 七、在Resources/jxcore\_app/app.js添加nodejs server 在app.js的最后面添加如下代码 function getIP() \{ var os = require('os'); var nets = os.networkInterfaces(); console.log(nets); for ( var a in nets) \{ var ifaces = nets\[a\]; for ( var o in ifaces) \{ if (ifaces\[o\].family == "IPv4" && !ifaces\[o\].internal) \{ return ifaces\[o\].address; \} \} \} return null; \} var ip = getIP(); if (!ip) \{ console.error("You should connect to a network!"); return; \} var http = require('http'); http.createServer(function(req, res) \{ res.writeHead(200, \{ 'Content-Type': 'text/plain' \}); var cur\_client = ""; if(req.connection && req.connection.remoteAddress) \{ console.log(req.connection.remoteAddress); cur\_client = req.connection.remoteAddress; \} else if(req.headers) \{ console.log("request header 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('Hello '+ cur\_client +', I am server on iphone app('+ ip +'). '+Date.now()+'\\n'); \}).listen(1337, ip); console.log('Server running at http://' + ip + ':1337/'); 运行程序,即可在xcode的log信息里面看到iphone的ip,然后通过网页就可以浏览网页。
还没有评论,来说两句吧...