linuxインタフェースのないシミュレータを起動

11953 ワード

https://www.getrouty.com/setting-up-android-on-a-linux-server-with-no-gui/
1.sdkのダウンロード
まっすぐ行く
wget http://dl.google.com/android/xxx-linux.tgz
tar -xvcf xxx-linux.tgz

 
2.sdkの更新に必要なもの
tools # ./android list sdk
Refresh Sources:
  Fetching https://dl-ssl.google.com/android/repository/addons_list-2.xml
  Validate XML
  Parse XML
  Fetched Add-ons List successfully
  Refresh Sources
  Fetching URL: https://dl-ssl.google.com/android/repository/repository-10.xml
  Validate XML: https://dl-
...

Packages available for installation or update: 44
   1- SDK Platform Android L Preview, revision 3
   2- SDK Platform Android 4.4.2, API 19, revision 3
   3- SDK Platform Android 4.3, API 18, revision 2
   4- SDK Platform Android 4.2.2, API 17, revision 2
   ...
  17- Google APIs (x86 System Image), Android API 19, revision 7
  18- Google APIs (ARM System Image), Android API 19, revision 7
  19- Glass Development Kit Preview, Android API 19, revision 8
  20- Google APIs, Android API 18, revision 3
  ...

 
前のシーケンス番号から選択できますが、一般的にはSDK APIとSystem Imageを選択する必要があります
 ./android update sdk --no-ui --filter 1,...,tool,platform-tool,doc

 
3.listコマンドでtargetを表示し、targetに基づいて対応するavdを作成する
tools # ./android list target
Available Android targets:
----------
id: 1 or "android-19"
     Name: Android 4.4.2
     Type: Platform
     API level: 19
     Revision: 3
     Skins: WXGA720, QVGA, WVGA854, WQVGA400, WSVGA, HVGA, WXGA800-7in, WVGA800 (default), WXGA800, WQVGA432
 Tag/ABIs : no ABIs.
----------
...
----------
id: 4 or "Google Inc.:Google APIs (x86 System Image):19"
     Name: APIs (xGoogle 86 System Image)
     Type: Add-On
     Vendor: Google Inc.
     Revision: 7
     Description: Android x86 + Google APIs
     Based on Android 4.4.2 (API level 19)
     Libraries:
      * com.google.android.media.effects (effects.jar)
          Collection of video effects
      * com.android.future.usb.accessory (usb.jar)
          API for USB Accessories
      * com.google.android.maps (maps.jar)
          API for Google Maps
     Skins: WXGA800, WXGA720, HVGA, WQVGA400, WVGA854, WXGA800-7in, WQVGA432, WSVGA, QVGA, WVGA800 (default)
 Tag/ABIs : default/x86

次にavd-nの後に名前-tの後にリストtargetの各targetのid番号を作成します
tools # ./android create avd -n And4.4.2 -t 3
Auto-selecting single ABI armeabi-v7a
Created AVD 'And4.4.2' based on Google APIs (Google Inc.), ARM (armeabi-v7a) processor,
with the following hardware config:
hw.lcd.density=240
hw.ramSize=512
vm.heapSize=48

作成したばかりのavdをlist avdで確認します
 
tools # ./android list avd
Available Android Virtual Devices:
    Name: And4.4.2
    Path: /root/.android/avd/And4.4.2.avd
  Target: Google APIs (Google Inc.)
          Based on Android 4.4.2 (API level 19)
 Tag/ABI: default/armeabi-v7a
    Skin: WVGA800

 
 
4.次は起動のプロセスです
コマンドを入力して起動することができます-avdの後ろにavdの名前が付いています(@名前も使えます)-no-windowインタフェースがなくて起動しますまだ多くのパラメータがhelpコマンドで検索することができます
 ./emulator -avd test -no-window -no-boot-anim

 
 5.起動しているかどうかを確認
sdk/platform-toolsに入ってadb shellを実行してデバイスに接続できるかどうか、adb logcatでシミュレータのログを確認します
 
 
このエラーが発生した場合は、updateのどのステップを選択していないためimageを選択するのを忘れたため、バージョンがimageの後ろに対応していないバージョン番号とsdk、apiに対応すればよい可能性があります.
Valid ABIs: no ABIs.
Error: This platform has more than one ABI. Please specify one using --abi.

再度list targetで発見
tools # ./android list target
Available Android targets:
----------
id: 1 or "android-20"
     Name: Android 4.4W
     Type: Platform
     API level: 20
     Revision: 1
     Skins: WXGA720, QVGA, WVGA854, WQVGA400, WSVGA, HVGA, WXGA800-7in, WVGA800 (default), WXGA800, WQVGA432
 Tag/ABIs : no ABIs.

 
新しいupdateの流れにimageを加えればいいです.
 
 
シミュレータを起動中に問題が発生しました
tools # ./emulator -avd And4.4.2 -no-window -no-boot-anim
emulator: ERROR: This AVD's configuration is missing a kernel file!!

これはシステムの問題だと思いますが、windowでtagがarmeabi-v 7 aであれば問題ありません.x 86を選んだものを再作成すればいいです(createのときtargetには区別があります)
図に示すid 4がx 86であるid 3は
id: 3 or "Google Inc.:Google APIs:19"
     Name: Google APIs
     Type: Add-On
     Vendor: Google Inc.
     Revision: 7
     Description: Android + Google APIs
     Based on Android 4.4.2 (API level 19)
     Libraries:
      * com.google.android.media.effects (effects.jar)
          Collection of video effects
      * com.android.future.usb.accessory (usb.jar)
          API for USB Accessories
      * com.google.android.maps (maps.jar)
          API for Google Maps
     Skins: WXGA800, WXGA720, HVGA, WQVGA400, WVGA854, WXGA800-7in, WQVGA432, WSVGA, QVGA, WVGA800 (default)
 Tag/ABIs : default/armeabi-v7a
----------
id: 4 or "Google Inc.:Google APIs (x86 System Image):19"
     Name: Google APIs (x86 System Image)
     Type: Add-On
     Vendor: Google Inc.
     Revision: 7
     Description: Android x86 + Google APIs
     Based on Android 4.4.2 (API level 19)
     Libraries:
      * com.google.android.media.effects (effects.jar)
          Collection of video effects
      * com.android.future.usb.accessory (usb.jar)
          API for USB Accessories
      * com.google.android.maps (maps.jar)
          API for Google Maps
     Skins: WXGA800, WXGA720, HVGA, WQVGA400, WVGA854, WXGA800-7in, WQVGA432, WSVGA, QVGA, WVGA800 (default)
 Tag/ABIs : default/x86

 
 
次のエラーが発生しましたが、もともとインタフェースがなく、openglのエラーを提示しているのはよくわかりませんが、シミュレータが正常に起動したら多管はありません.
 ./emulator -avd test1 -no-window -no-boot-anim
emulator: ERROR: Could not load OpenGLES emulation library: libX11.so.6: cannot open shared object file: No such file or directory
emulator: WARNING: Could not initialize OpenglES emulation, using software renderer.
emulator: warning: opening audio output failed



 ./emulator -avd test1 -no-window -no-boot-anim -no-audio -gpu off
emulator: ERROR: Could not load OpenGLES emulation library: libX11.so.6: cannot open shared object file: No such file or directory
emulator: WARNING: Could not initialize OpenglES emulation, using software renderer.