我创建了一个新的硬件配置文件,试图为Galaxy S8 / S8 +制作和模拟器。我将屏幕尺寸设置为5.8 / 6.2英寸(取决于是否S8或S8 +,尽管事实上这似乎不会影响模拟器),屏幕分辨率为1440 x 2960,就像设备一样。模拟器看起来没有像在真实设备上那样。在真正的S8 +上测试我的应用程序显示它布局不佳,但在模拟器上它看起来相对有条理,我注意到它使用了我的Nexus 6模拟器(xxxhdpi)的尺寸。现在使用的尺寸值并不是什么大问题,因为我很高兴逐步淘汰Nexus 6,因为它已经不再生产了。
所以我在我的启动程序Java类中添加了一些代码,它让我得到了模拟器的维度,这是我从我的S8模拟器得到的:{density=3.5, width=1440, height=2792, scaledDensity=3.5, xdpi=560.0, ydpi=560.0}
除了事实高度说2792而不是2960(我认为这意味着要发生) ,我相信我看到了问题 - 密度是3.5。可疑,这与Nexus 6的密度相同。所以我创建的模拟器不适用于Galaxy S8,这在我与真实的S8 +的比较中很明显,后者以扭曲的方式显示我的应用程序。据我所知,Galaxy S8的密度为4,而不是3.5。 IDE说设备有560dpi。现在我需要能够创建一个密度为4的模拟器,并且我已经放下了相同的规格。我怎样才能做到这一点?如何在不使用真品的情况下测试Galaxy S8? IDE提供的此设备没有预配置的仿真器。
提前谢谢了。
没有预配置的模拟器。根据我的经验,即使你尝试使用匹配的设备配置创建它也不会有太大的用处,因为它仍然会运行库存android。
所以,我发现三星提供像firebase这样的在线测试实验室。
你可以去http://developer.samsung.com/rtlLanding.do检查一下。如果您没有开发者帐户,他们可以免费使用5分钟。
根据三星,您可以获得以下信息:
- 每天为每位Samsung Developer用户提供20个学分。
- 只需1个学分,用户就可以使用远程测试实验室服务15分钟。
- 最少预订:30分钟(2学分)
- 最多预订:每天10小时(40学分)
更多细节:http://developer.samsung.com/remotetestlab/rtlAboutRTL.action