android avd

android avd

avd 记录~

一、avd 创建1.1、选择创建自己的设备1.2、自定义设备的参数配置1.3、选择自己创建的设备,next,再选择api即可。

二、avd 默认位置安装位置2.1、.android/avd 下2.1.1、.android/avd/xxxx.ini 文件2.1.2、.android/avd/.avd 下 config.ini

三、ADB 设置四、注意4.1、状态栏不隐藏,但是代码获取状态栏是0

四、参考地址

一、avd 创建

1.1、选择创建自己的设备

1.2、自定义设备的参数配置

https://developer.android.google.cn/studio/run/managing-avds?hl=zh-cn#hpproperties

英文解释Device Name设备名称Device Type设备类型Screen屏幕:屏幕尺寸Memory存储设备:RAMInput - Has Hardware Buttons输入:具有硬件按钮(返回/主屏幕/菜单)设置后会隐藏状态栏和导航栏Input - Has Hardware Keyboard输入:具有硬件键盘Navigation Style输入:导航样式

1.3、选择自己创建的设备,next,再选择api即可。

二、avd 默认位置安装位置

通过环境变量设置是可以修改的,如果使用的是windows就要修改,否则会占用C盘。

2.1、.android/avd 下

2.1.1、.android/avd/xxxx.ini 文件

包含:编码格式、AVD路径、名称、目标版本

avd.ini.encoding=UTF-8

path=/Users/xxxx/.android/avd/E171-TV_API_31.avd

path.rel=avd/E171-TV_API_31.avd

target=android-31

2.1.2、.android/avd/.avd 下 config.ini

AvdId = E171-TV_API_31

PlayStore.enabled = false

abi.type = arm64-v8a

avd.ini.displayname = E171-TV API 31

avd.ini.encoding = UTF-8

disk.dataPartition.size = 6442450944

fastboot.chosenSnapshotFile =

fastboot.forceChosenSnapshotBoot = no

fastboot.forceColdBoot = no

fastboot.forceFastBoot = yes

hw.accelerometer = yes

hw.arc = false

hw.audioInput = yes

hw.battery = yes

hw.camera.back = virtualscene

hw.camera.front = emulated

hw.cpu.arch = arm64

hw.cpu.ncore = 4

hw.dPad = no

hw.device.hash2 = MD5:12a57aa6873840a84dec2f2937e4bb8a

hw.device.manufacturer = User

hw.device.name = E171-TV

hw.gps = yes

hw.gpu.enabled = yes

hw.gpu.mode = auto

hw.initialOrientation = landscape

hw.keyboard = yes

# 密度比(dpi)

hw.lcd.density = 160

# 尺寸

hw.lcd.height = 792

hw.lcd.width = 1726

# 导航栏,最好不要改,会引起尺寸拉伸,最好通过创建就定好,phone这个值是yes,TV是no

hw.mainKeys = no

hw.ramSize = 1536

hw.sdCard = no

hw.sensors.orientation = yes

hw.sensors.proximity = yes

hw.trackBall = no

image.sysdir.1 = system-images/android-31/google_apis/arm64-v8a/

runtime.network.latency = none

runtime.network.speed = full

showDeviceFrame = no

skin.dynamic = yes

# 尺寸

skin.name = 1726x792

skin.path = _no_skin

skin.path.backup = _no_skin

tag.display = Google APIs

tag.id = google_apis

vm.heapSize = 192

通过此配置文件修改尺寸和density是好用的,如果想设置状态栏和导航栏不可见,建议不要在此设置,而是通过”1.2“的设置修改,否则界面尺寸不太对。

hw.dPad = yes //隐藏导航栏将no改成yes

hw.mainKeys = yes //隐藏导航栏将no改成yes

如上修改完尺寸不太对

三、ADB 设置

改变屏幕尺寸和密度比,貌似只是此次生效,我看文件里的数值没变。

adb shell wm size 1726x792

adb shell wm density 160

四、注意

4.1、状态栏不隐藏,但是代码获取状态栏是0

secondary % adb shell wm size

Physical size: 1320x1272

Override size: 1272x1320

secondary % adb shell wm size

Physical size: 1272x1320

secondary %

如上,如果出现这个状态: Physical size: 1320x1272 Override size: 1272x1320 那么AVD会有错误,状态栏显示出来了;

修改config.ini 内的尺寸后确保只有只有 Physical size: 1272x1320 这个时候,状态栏隐藏了。

四、参考地址

https://developer.android.google.cn/studio/run/managing-avds?hl=zh-cn

https://blog.csdn.net/m0_37792384/article/details/129526914