【问题标题】:Disabling quick settings and notifications bar in Lollipop在 Lollipop 中禁用快速设置和通知栏
【发布时间】:2016-09-12 13:39:57
【问题描述】:
我需要禁用 Android Lollipop 根设备上的快速设置和通知栏。我能够做到这一点的唯一方法是使用以下命令禁用 SystemUI 应用程序 pm disable com.android.systemui。有没有其他不需要安装任何应用程序(如 Xposed)的方法来做到这一点?也许修改 .prop 文件或编辑 .db 上的设置?
我有一个系统应用程序,所以也许我可以使用它?有人知道 Xposed-Gravity 是如何做到的吗?
【问题讨论】:
标签:
android
android-5.0-lollipop
root
statusbar
android-notification-bar
【解决方案1】:
我设法创建了一个系统应用程序。接下来是步骤。
- 将
android.permission.STATUS_BAR 权限添加到清单中。
-
在监听 android.intent.action.BOOT_COMPLETED 的 BroadcastReceiver 上,执行以下操作:
public class BootReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
StatusBarManager statusBarManager = (StatusBarManager) context.getSystemService("statusbar");
statusBarManager.disable(StatusBarManager.DISABLE_EXPAND);
}
}
状态栏将在几秒钟内可用,但在启动 BOOT_COMPLETED 广播后,它将被禁用。如果您不希望发生这种情况,您的应用应该是启动器类型的应用程序,并在启动器显示后立即使用此代码。
额外:您还可以使用以下方法禁用软键:
StatusBarManager statusBarManager = (StatusBarManager) context.getSystemService("statusbar");
int state = StatusBarManager.DISABLE_EXPAND | StatusBarManager.DISABLE_RECENT | StatusBarManager.DISABLE_HOME | StatusBarManager.DISABLE_BACK;
statusBarManager.disable(state);