在CentOS headless(无GUI)服务器上运行android仿真器

在CentOS headless(无GUI)服务器上运行android仿真器,android,Android,我有一个运行在Azure云上的虚拟机,CentOS 7 我想在这个服务器上运行一个android应用程序,所以我需要一个android模拟器 我试过谷歌官方Android模拟器,但没有成功 arm架构下,合子总是接收信号11,然后终止,然后重启,然后终止,总是这样循环,模拟器永远无法成功启动 x86架构,模拟器也不会启动 配置shell: yum -y install update yum -y install java-1.8.0-openjdk yum -y install pulseaud

我有一个运行在Azure云上的虚拟机,CentOS 7

我想在这个服务器上运行一个android应用程序,所以我需要一个android模拟器

我试过谷歌官方Android模拟器,但没有成功

arm架构下,合子总是接收信号11,然后终止,然后重启,然后终止,总是这样循环,模拟器永远无法成功启动

x86架构,模拟器也不会启动

配置shell:

yum -y install update
yum -y install java-1.8.0-openjdk
yum -y install pulseaudio-libs

echo 'export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.262.b10-0.el7_8.x86_64/jre' | sudo tee -a ~/.bashrc
echo 'export PATH=$PATH:$JAVA_HOME/bin' | sudo tee -a ~/.bashrc
echo 'export CLASSPATH=$JAVA_HOME/jre/lib/ext:$JAVA_HOME/lib/tools.jar' | sudo tee -a ~/.bashrc
echo '' | sudo tee -a ~/.bashrc
echo 'export ANDROID_SDK_ROOT=/root/AndroidSDK' | sudo tee -a ~/.bashrc
echo 'export ANDROID_HOME=/root/AndroidSDK' | sudo tee -a ~/.bashrc
echo 'export PATH=$PATH:$ANDROID_HOME/emulator:$ANDROID_HOME/platform-tools:$ANDROID_HOME/cmdline-tools/tools/bin' | sudo tee -a ~/.bashrc
source .bashrc

mkdir -p /root/AndroidSDK/cmdline-tools
wget --tries=0 --retry-connrefused --waitretry=5 --read-timeout=20 https://dl.google.com/android/repository/commandlinetools-linux-6609375_latest.zip -O commandlinetools-linux.zip
unzip -o -d /root/AndroidSDK/cmdline-tools commandlinetools-linux.zip

echo yes | sdkmanager platform-tools emulator
sdkmanager "platforms;android-25"
sdkmanager "platforms;android-28"
sdkmanager "build-tools;30.0.1"
echo yes | sdkmanager --channel=3 "emulator"
sdkmanager "system-images;android-28;default;x86" 
sdkmanager "system-images;android-28;default;x86_64" 
sdkmanager "system-images;android-25;google_apis;arm64-v8a"
sdkmanager "system-images;android-25;google_apis;armeabi-v7a"

adb start-server

echo no | avdmanager create avd --force --name androidARM7 --package "system-images;android-25;google_apis;armeabi-v7a" | echo no
emulator -avd androidARM7 -no-skin -noaudio -no-window -camera-back none -camera-front none -no-boot-anim -gpu off -screen touch -verbose -debug all -show-kernel

echo no | avdmanager create avd --force --name androidARM8 --package "system-images;android-25;google_apis;arm64-v8a" | echo no
emulator -avd androidARM8 -no-skin -noaudio -no-window -camera-back none -camera-front none -no-boot-anim -gpu off -screen touch -verbose -debug all -show-kernel

echo no | avdmanager create avd --force --name androidX86 --package "system-images;android-28;default;x86"  | echo no
emulator -avd androidX86 -no-skin -noaudio -no-window -camera-back none -camera-front none -no-boot-anim -gpu swiftshader_indirect -screen touch -verbose -debug all -show-kernel

echo no | avdmanager create avd --force --name androidX64 --package "system-images;android-28;default;x86_64"   | echo no
emulator -avd androidX64 -no-skin -noaudio -no-window -no-accel -camera-back none -camera-front none -no-boot-anim -gpu off -screen touch -verbose -debug all -show-kernel
日志太长,无法在此发布

arm日志:

x86日志:

我只是想知道有没有可能在无头CentOS服务器上运行Android Emulator

我需要试试其他的android模拟器吗


什么模拟器可以在linux中运行并支持headless?

运行Android应用程序headless有什么意义?Frida hook应用程序的方法,然后获取data@Henry运行无头android应用程序的目的是为了进行自动化测试。@olegriabov,你找到在centos上运行无头android模拟器的解决方案了吗?