Android Studio Androidアプリ java アプリ開発 プログラミング

[Android] ステータスバーを非表示にしたり隠したりする方法

root権限が無いと完全に非表示にはできない

Androidタブレットの場合、ナビゲーションバーも必須だが、ステータスバーも完全に隠すことができません。
rootユーザーでないとそのあたりの制御はできないようなので、要件としてステータスバーを非表示にしたり隠したりしたい場合には、「それっぽいもの」を開発する必要があります。

rootで隠す場合のコード

Object service = getSystemService ("statusbar");

try { 
    Class <?> StatusBarManager = Class.forName("Android.app.StatusBarManager"); 
    Method expand = statusBarManager.getMethod ("disable", int.class); 
    expand.invoke (service, 0x00000001); 
} Catch (Exception e) { 
    e.printStackTrace (); 
}

パーミッション設定は以下

<uses-permission android:name="android.permission.STATUS_BAR"/> 
<uses-permission android:name="android.permission.DISABLE_STATUS_BAR"/> 

root以外の場合は、focusChangedあたりで拾って引き伸ばされたタイミングで閉じるとかそういった感じが落とし所になります。

-Android Studio, Androidアプリ, java, アプリ開発, プログラミング

Copyright© LAPTURE , 2020 All Rights Reserved.