如何展示完美的4k画面Android电视?

时间:2015-11-05 12:00:57

标签: android-6.0-marshmallow television android-tv

我的公司里有一项任务。他们希望我在Android电视上显示4k分辨率图像(4096 X 2160),我们现在只使用Android java代码。我要提到的一件事是,我们的电视分辨率是1920 X 1080.我从日志中得到了这个分辨率:

        WindowManager windowManager = (WindowManager) mContext.getSystemService(Context.WINDOW_SERVICE);
        Display display = windowManager.getDefaultDisplay();
        TvLog.i(TAG, "Width" + display.getWidth());
        TvLog.i(TAG, "Height" + display.getHeight());

并且宽度将显示1920,而高度将显示1080.我只使用一个简单的代码来显示图像。下面是代码:

View view;
WindowManager wm;

public void onStart(Intent intent, int startId) {
    super.onStart(intent, startId);
    LayoutInflater layoutInflater = LayoutInflater.from(this);
    WindowManager.LayoutParams params = new WindowManager.LayoutParams(
            WindowManager.LayoutParams.WRAP_CONTENT,
            WindowManager.LayoutParams.WRAP_CONTENT,
            WindowManager.LayoutParams.TYPE_SYSTEM_OVERLAY,
            WindowManager.LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH,
            PixelFormat.TRANSPARENT);
    wm = (WindowManager) getSystemService(Context.WINDOW_SERVICE);
    view = layoutInflater.inflate(R.layout.pict_4k, null);
    params.gravity = Gravity.TOP | Gravity.END;
    wm.addView(view, params);
}

布局也很简单:

<ImageView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="fitXY"
android:src="@drawable/a1" >

我读到只有Android 6.0,才会推出4k模式API。目前我正在使用Android 5.0。所以,有什么办法让我强制图片在电视上显示其实际分辨率吗?

1 个答案:

答案 0 :(得分:0)

Android TV分辨率仅支持高达1080P

是的,Android 6.0确实允许4K display,但前提是硬件支持它。

  

平台现在允许应用请求显示分辨率   在兼容硬件上升级到4K渲染。