禁止Android的StatusBar下拉
-
Android中有许多隐藏的Service,StatusBarManager就是其中一个,在Context.java中可以看到:
[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";/**
* 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下拉的,比如电话、锁屏模块。想要调用该方法,你还需要以下权限:
[html]
获取StatusBarManager实例,[java]
mStatusBarManager = (StatusBarManager) mContext.getSystemService(Context.STATUS_BAR_SERVICE);mStatusBarManager = (StatusBarManager) mContext.getSystemService(Context.STATUS_BAR_SERVICE);
禁止下拉,
[java]
mStatusBarManager.disable(StatusBarManager.DISABLE_EXPAND);mStatusBarManager.disable(StatusBarManager.DISABLE_EXPAND);
解除禁止,
[java]
mStatusBarManager.disable(StatusBarManager.DISABLE_NONE);mStatusBarManager.disable(StatusBarManager.DISABLE_NONE);
更多相关文章
- Android Studio安装app 报错的问题It is possible that this iss
- Google Maps API Key申请方法及地址
- android 笔记 --- Android Bitmap 建立或取得的方法
- Android自带Music播放器更新播放时间和进度条的方法
- 仿照利用android系统源码资源文件,修改SeekBar颜色 前景与背景
- zxing项目源码解读(2.3.0版本,Android部分)
- Android事件分发机制源码分析
- android使用ant编译找不到apkbuilder.jar的错误的解决方法
- vim+ctags+cscope 打造Android源码阅读工具