如何获得显示模式

时间:2012-09-26 10:02:49

标签: android screen-resolution

我的Android设备在Display Mode页面下有一个Settings -> Display。此显示模式设置屏幕显示各种显示模式,如480i, 480p, 720p, 1080p, 1080i等... 我的设备有Android OS版本2.3.3。请注意,这是一个定制的Android设备。

当我选择任何这些显示模式时,我的设备模式会发生变化。我需要以编程方式获取当前选择的显示模式值。

有什么办法可以做到吗?

Settings屏幕 The <code>Settings</code> screen

Display Settings屏幕 The <code>Display Settings</code> screen

Output Mode微调器 The <code>Output Mode</code> spinner

2 个答案:

答案 0 :(得分:0)

我得到了一个解决方案。

第一种方式

我看到了一个名为About的应用。此应用程序将SystemProperties列为propertynamevalue列表。从这里,我获得了所需的属性名称ubootenv.var.outputmode

然后我得到另一个线程,使用SystemProperties android命令从getprop

读取display-output-mode

通过这种方式,现在我可以获得android.os.SystemProperties参数。

第二种方式

我还尝试通过反射使用get类,并尝试调用null方法。但这始终是{{1}}。

无论如何,第一种方法是有效的。谢谢你的帮助:)

答案 1 :(得分:-1)

    Display display = getWindowManager().getDefaultDisplay();
    final Point size = new Point();

    try{
        display.getSize(size);
    }catch(NoSuchMethodError nsme){
        Log.w(TAG, "@ Error caz of display.getSize() : " + nsme);
        size.x = display.getWidth();
        size.y = display.getHeight();
    }
来自API级别13的

getSize()支持。这就是我们需要使用try catch块的原因。