【发布时间】:2015-01-22 14:45:08
【问题描述】:
我正在开发消息应用程序,我想禁用它应该显示但不可触摸的状态栏。
我试过下面的代码: 活动中:
StatusBarManager mStatusBarManager = (StatusBarManager) getSystemService(Context.STATUS_BAR_SERVICE);
mStatusBarManager.disable(StatusBarManager.DISABLE_EXPAND);
在清单中,我还添加了权限:
但我收到以下错误:
原因:java.lang.SecurityException:StatusBarManagerService:用户 10004 和当前进程都没有 android.permission.STATUS_BAR。
【问题讨论】:
-
android.permission.STATUS_BAR的文档说“不供第三方应用程序使用”。大概这意味着你必须是 root。 -
我没有使用第三方应用程序。我正在自定义默认的 Android 消息应用程序。并构建为系统应用程序
-
如何构建系统应用程序?该错误表明您只认为自己正在构建为系统应用程序。
-
我正在构建完整的源代码并创建系统映像和 .fls 文件。使用此命令 BUILD_FOR_KDUMP=yes 创建 createfls -j32 以及存储在 system/app 和 system/priv-app 文件夹中的所有 apk 文件
-
已解决!通过在 Manifest 文件中添加 android:sharedUserId="android.uid.system" 并在 Android.mk 文件中添加 LOCAL_CERTIFICATE = platfform。