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

ライブTV信号にオーバーレイを実行する場合は、このインテントを使用して、ライブTVに次の情報を表示させることができます。

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 に答える
0

これに対する私の最善の解決策は、基本的にそれをスクラップして、カスタムダイアログボックス上に構築することだと思います

于 2012-08-19T04:46:34.830 に答える