Androidエミュレータバージョン26.0.0.0で苦労しています。ツールはAndroid Studio(2.3.1)で管理されています。これらはすべて最新のアップデートでFedora FC25上で動作します。Androidアームエミュレータにネットワークアクセスがありません
ARMエミュレータにネットワークアクセス権が与えられていないようです。同じことがx86/x64でもうまく動作しますが、arm(またはarm64)では動作しません。
私は自分の能力の終わりまで何が起こっているのか、どこで掘り続けるべきかをデバッグするように見えました。
オンアーム:名前を解決する機能はありません。外部ネットワークに接続する機能はありません。接続を確認するためにnc
をadb shell
から実行しています。アームエミュレータでは、ホスト名を使用する場合はホストルックアップでタイムアウトし、IPで接続する場合はno route to host
となります。ブラウザアプリケーションも接続できません。エミュレータでstrace
を実行しても、DNSサーバに接続しようとする試みが表示されません。
x86:すべて動作します。しかし、私はそれが働き始める前に-dns-server
オプションを追加しなければならなかった。
デバッグ私がやったことのほとんどは、両方のエミュレータとその違いを調べるためにstraceを実行していました。 AFAIU、要求を行うI/Oスレッドがあり、それは腕の場合の要求をピックアップしていないように見えます。または、要求が適切に寄託されていない。スレッドはそうでなければOKと思われ、ポーリングとフューテックスロックの間を繰り返します。
私の主なポイントは、ARMエミュレータ(特定のARMネイティブコードのデバッグに必要)を実行することです。掘る、または私が何をやってもどこに
任意のポインタ:
デバッグ出力は、(私は出力からマルチタッチ接続エラーを削除しました)間違っていると大歓迎です。私は両方とも実行することから完全なトレースファイルを投稿することができます。