Node.jsの学習の一環として、Androidクライアント用のサーバー側として使用することにしました。 私はNode、NPM、Android SDK、Netbeans 7を搭載したUbuntu 11 VirtualBoxを配備して行きました。AndroidエミュレータからローカルVirtualBox上のNode.jsにアクセス
問題:エミュレータからローカルホストにアクセスできません。
1.ノードの "Hello World" スクリプト:
var app = require('express').createServer();
app.get('/', function(req, res){
res.send('Hello World\r\n');
});
app.listen(3000);
2.ターミナルを>ifconfig
'のINET addrの:10.0.2.15' を返さ
は、ここに私が試したものだ
3.ターミナル>curl 10.0.2.15:3000
- > "Hello World" の
4.ブラウザ>http://10.0.2.15:3000からhttp://10.0.2.15:3000アクセスしようとする> "Hello World" の
5. Androidのエミュレータ>アプリ - >
を "http://10.0.2.15:3000への接続が拒否されました" 0 6. Androidエミュレータ> Androidブラウザ>http://10.0.2.15:3000> "ウェブページが利用できません"
私はAndroidエミュレータ>ブラウザ>他のページ - 作品を確認しました。
AndroidエミュレータがローカルのVirtualBox IPにアクセスできないようです。
私はVBox内でファイアウォールを実行していません。私は変更可能なエミュレータ内に設定がないことを知っています。最初は私のアプリでした(ダミーの "get url"小さなアプリケーションでandroid.permission.INTERNET
をマニフェストにしています)が、ブラウザからも届きません。
私が逃した方向やアイデアは?
あなたの時間と援助は高く評価されています!ガイ
あなたのAndroidエミュレータにはどのようなIPアドレスが割り当てられていますか? IIRCはデフォルトで10.0.2.15と同じです。 – cababunga
2つのネットワーキング "ハッキング"を組み合わせようとしています。これらのハッキングは、特に両方が10.0.0.0サブネットに特別な意味を持つように見えます。仮想ボックスサブネットを別のものに移動してみてください。また、ローカルマシンのポートをvirtualboxに、サーバがリッスンしているポートに転送することを検討してください。たとえば、物理マシンからsshを入力してsshポートの転送を読み込んだ後、特別な別名でアンドロイド仮想デバイスからそのポートに接続しますホスティングPCのループバックアドレス用。 –
@cababunga - エミュレータのIPを知るにはどうすればよいですか?あなたが正しいなら、私はそれをどのように変更することができますか? –