4

我(我希望)在为 Google TV 做一些开发时遇到了一点问题

我想做的是我希望能够在右下角显示一个小窗口,这很好..问题是我不确定如何在后台摆脱屏幕保护程序

这是我目前拥有的代码。

    public void onCreate(Bundle savedInstanceState)
{
     super.onCreate(savedInstanceState);
     setContentView(R.layout.activity_eyece_box_window);

     final WindowManager.LayoutParams params = new WindowManager.LayoutParams(               
                         WindowManager.LayoutParams.TYPE_SYSTEM_ALERT,               
                         WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE
                         | WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL
                         | WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE); 
     params.gravity = Gravity.RIGHT | Gravity.BOTTOM;
     params.width = 300;
     params.height = 500;
     this.getWindow().setAttributes(params);

}

所以我真正希望应用程序做的是显示在堆栈上方

问题图片

4

3 回答 3

3

将 android.permission.WAKE_LOCK 添加到清单并调用 PowerManager:

PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
PowerManager.WakeLock wl = pm.newWakeLock(
PowerManager.SCREEN_DIM_WAKE_LOCK
        | PowerManager.ON_AFTER_RELEASE, "tag");
wl.acquire();
wl.release();
于 2012-08-19T05:34:05.073 回答
0

我认为我最好的解决方案是基本上废弃它并在自定义对话框上构建它

于 2012-08-19T04:46:34.830 回答
0

如果您想在直播电视信号上进行叠加,那么您可以使用此意图让直播电视显示:

final Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.setData(Uri.parse("tv://passthrough"));
context.startActivity(intent);
于 2012-08-16T17:50:21.680 回答