2017-05-09 8 views
1

Androidエミュレータバージョン26.0.0.0で苦労しています。ツールはAndroid Studio(2.3.1)で管理されています。これらはすべて最新のアップデートでFedora FC25上で動作します。Androidアームエミュレータにネットワークアクセスがありません

ARMエミュレータにネットワークアクセス権が与えられていないようです。同じことがx86/x64でもうまく動作しますが、arm(またはarm64)では動作しません。

私は自分の能力の終わりまで何が起こっているのか、どこで掘り続けるべきかをデバッグするように見えました。

オンアーム:名前を解決する機能はありません。外部ネットワークに接続する機能はありません。接続を確認するためにncadb shellから実行しています。アームエミュレータでは、ホスト名を使用する場合はホストルックアップでタイムアウトし、IPで接続する場合はno route to hostとなります。ブラウザアプリケーションも接続できません。エミュレータでstraceを実行しても、DNSサーバに接続しようとする試みが表示されません。

x86:すべて動作します。しかし、私はそれが働き始める前に-dns-serverオプションを追加しなければならなかった。

デバッグ私がやったことのほとんどは、両方のエミュレータとその違いを調べるためにstraceを実行していました。 AFAIU、要求を行うI/Oスレッドがあり、それは腕の場合の要求をピックアップしていないように見えます。または、要求が適切に寄託されていない。スレッドはそうでなければOKと思われ、ポーリングとフューテックスロックの間を繰り返します。

私の主なポイントは、ARMエミュレータ(特定のARMネイティブコードのデバッグに必要)を実行することです。掘る、または私が何をやってもどこに

任意のポインタ:

デバッグ出力は、(私は出力からマルチタッチ接続エラーを削除しました)間違っていると大歓迎です。私は両方とも実行することから完全なトレースファイルを投稿することができます。

答えて

0

あなたのAndroidエミュレータをv26.1.0にアップデートすると正常に動作します。