Android中有许多隐藏的Service,StatusBarManager就是其中一个,在Context.java中可以看到:

    /**     * Use with {@link #getSystemService} to retrieve a {@link     * android.app.StatusBarManager} for interacting with the status bar.     *     * @see #getSystemService     * @see android.app.StatusBarManager     * @hide     */    public static final String STATUS_BAR_SERVICE = "statusbar";

表明该service不对外提供,如果要调用的话需要在源码树上编译,才能调用到标记为@hide的接口。也可以将源码编译出来的classes.jar包添加到工程里面。


StatusBarManager提供了一些有用的接口,像disable()方法正是我们需要的,一些系统级的应用也是调用的该方法禁止StatusBar下拉的,比如电话、锁屏模块。想要调用该方法,你还需要以下权限:

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

获取StatusBarManager实例,

mStatusBarManager = (StatusBarManager) mContext.getSystemService(Context.STATUS_BAR_SERVICE);


禁止下拉,

mStatusBarManager.disable(StatusBarManager.DISABLE_EXPAND);


解除禁止,

mStatusBarManager.disable(StatusBarManager.DISABLE_NONE);


更多相关文章

  1. Android通过WebView调用 JS 代码
  2. android 获取 imei号码
  3. [Android(安卓)Pro] 创建快捷方式,删除快捷方式,查询是否存在快捷
  4. android 调用draw(canvas) 函数自动退出
  5. Android应用程序键盘(Keyboard)消息处理机制分析(22)
  6. Android(安卓)SQLite存取图像
  7. 高斯模糊效果移植到android系统
  8. Android中findViewById返回为空null的快速解决办法
  9. Android(安卓)SQLite数据库

随机推荐

  1. Google cardBoard Android(安卓)API (四)
  2. Swift Modules for React Native
  3. 自动输入文本效果—AutoCompleteTextView
  4. Android(安卓)Metrail Design
  5. Android手势操作(三)
  6. Android:线性布局(LinearFrame)例子
  7. 如何使用 Android(安卓)Studio 的 git hu
  8. Android(安卓)自定义Ratingbar
  9. Android中调节Activity变亮变暗(屏幕亮度)
  10. 实现gridview画分界线