linux 启动一个没有界面的模拟器

本文介绍了如何在没有图形界面的Linux服务器上设置并启动Android模拟器。首先,通过下载SDK并更新所需组件,特别是选择SDK API和System Image。接着,使用list命令创建AVD,并通过指定名字和目标ID来创建模拟器。启动模拟器时使用-no-window参数以无界面模式运行,并使用adb命令检查设备连接和日志。如果遇到问题,可能需要更新Image或选择不同的CPU架构,如armeabi-v7a或x86。

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后面就是上面一步 list 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

用list avd 查看一下刚刚创建的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-v7a的就没有问题,重新创建一个选用x86的就可以了(create 的时候 target里面有区分)

 如图所示 id 4就是x86的 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.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值