Android TV开发之模拟器的设置
在进行Android TV开发时,会碰见模拟器显示的效果跟在盒子上或电视上差异很大,屏幕的大小都是1920*1080的,为什么会差别这么大呢,原因就是像素密度的问题。我们可以用一下代码进行测试:
DisplayMetrics dm =getResources().getDisplayMetrics(); int w_screen = dm.widthPixels; int h_screen = dm.heightPixels; ToastUtil.showToast( "屏幕尺寸1:宽度 = " + w_screen + "高度 = " + h_screen + "密度 = " + dm.densityDpi);
会发现,在盒子上的密度值和模拟器上的密度值不一样,这就需要修改模拟器的pixel-density的值。在android studio 的Virtual Manager上默认提供的是xhdpi的分辨率,density的值为320。如果这个值和盒子上的值不一致,就会导致,显示差异。我们可以用如下方法,创建和盒子的密度值一致的模拟器:
1.在Virtual Configuration界面上选择一个1920*1080的配置,右键,export,存储为xml文件。
2.然后打开存储的xml文件,修改d:name节点的值和d:pixel-density值。如何修改,下面有个对应关系:
xhdpi 320
hdpi 240
mdpi 160
3.修改完毕后在Virtual Configuration界面上,点击Import Hardware Profiles,选中刚才修改过的文件,
导入配置,点击右下角的刷新按钮,完成后在TV 的列表中就会新增一个device definition。就可以用这个device definition
来创建模拟器,就可以在模拟器上运行app,并达到跟真实盒子或电视基本一致的显示效果。
相关推荐
Nostalgiachild 2020-11-13
韩伟佳 2020-10-09
wuleihenbang 2020-09-16
zzqLivecn 2020-07-09
chenjinlong 2020-06-10
yinbaoshiguang 2020-06-09
sgafdsg 2020-06-04
ustcrding 2020-06-03
chenjinlong 2020-06-03
AndroidGA 2020-06-01
安辉 2020-05-27
绿豆饼 2020-05-26
CNETNews 2020-05-26
xilove0 2020-05-12
绿豆饼 2020-05-12
ChainDestiny 2020-05-07
doomvsjing 2020-05-07
hqulyc 2020-05-05
lyccsu 2020-04-30