姓名:李昕洲 学号:16030120026
【嵌牛导读】:本文将为你介绍Android TV开发之模拟器的设置。
【嵌牛鼻子】:Android TV开发之模拟器。
【嵌牛提问】:怎么对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,并达到跟真实盒子或电视基本一致的显示效果。