android学习笔记14 - android.os包:系统功能调用和系统参数获取
2015-11-26 14:41
459 查看
android.os包中包含了系统参数的获取和系统功能的调用,以下介绍4个其中常用的包的调用:
1.android.os.Build
Build.BOARD // 主板
Build.BRAND // android系统定制商
Build.CPU_ABI // cpu指令集
Build.DEVICE // 设备参数
Build.DISPLAY // 显示屏参数
Build.FINGERPRINT // 硬件名称
Build.HOST
Build.ID // 修订版本列表
Build.MANUFACTURER // 硬件制造商
Build.MODEL // 版本
Build.PRODUCT // 手机制造商
Build.TAGS // 描述build的标签
Build.TIME
Build.TYPE // builder类型
Build.USER
2.android.os.Build.VERSION
// 当前开发代号
Build.VERSION.CODENAME
// 源码控制版本号
Build.VERSION.INCREMENTAL
// 版本字符串
Build.VERSION.RELEASE
// 版本号
Build.VERSION.SDK
// 版本号
Build.VERSION.SDK_INT
3.android.os.SystemClock
SystemClock.currentThreadTimeMillis();
// 在当前线程中已运行的时间
SystemClock.elapsedRealtime(); // 从开机到现在的毫秒书(手机睡眠(sleep)的时间也包括在内)
SystemClock.uptimeMillis(); // 从开机到现在的毫秒书(手机睡眠的时间不包括在内)
SystemClock.sleep(100); // 类似Thread.sleep(100);但是该方法会忽略InterruptedException
//
设置时钟的时间,和System.setCurrentTimeMillis类似,其中因为SystemClock的setCurrentTimeMillis
的permission是signatureOrSystem等级的,直
//接使用user-permission没有作用,设置的格式是毫秒,然后对年月日进行转换。
SystemClock.setCurrentTimeMillis(1000);
//
计算时间间隔
long
starttime=SystemClock.uptimeMillis();
long timeInterval = SystemClock.uptimeMillis() - starttime;
4.android.os.PowerManager
//
PowerManager的一般用法,请求和释放唤醒锁
PowerManager powerMgr = (PowerManager) getSystemService(Context.POWER_SERVICE);
int flags = PowerManager.SCREEN_BRIGHT_WAKE_LOCK | PowerManager.ACQUIRE_CAUSES_WAKEUP;
WakeLock wakeLock = powerMgr.newWakeLock(flags, "for debug purpose tag");
wakeLock.acquire(); // 获取唤醒锁
wakeLock.release(); // 释放唤醒锁
// 在游戏中,会将acquire放在onResume中;将release放在onPause,这样在程序运行时就可以保持屏幕常量;在程序处在后台时,就恢复原来的设置。
// PowerManager的其它api的使用
powerMgr.goToSleep(SystemClock.uptimeMillis() + 100); // 100ms后进入睡眠
powerMgr.isScreenOn(); // 屏幕是否亮着
powerMgr.userActivity(SystemClock.uptimeMillis()+100, true); // 相当于按home键,会引起从睡眠激活
// WakeLock的其它api
wakeLock.acquire(1000); // 获取唤醒锁,并在1000ms后释放
wakeLock.isHeld(); // 当前是否持有唤醒锁
// 是否使用引用计数,默认是启用的。引用计数应该就是第一次请求为1,第二次加1,再一次再加1。
// 在释放时,只有引用计数为0时才被视为完全释放(所以要多次调用release)
wakeLock.setReferenceCounted(true);
1.android.os.Build
Build.BOARD // 主板
Build.BRAND // android系统定制商
Build.CPU_ABI // cpu指令集
Build.DEVICE // 设备参数
Build.DISPLAY // 显示屏参数
Build.FINGERPRINT // 硬件名称
Build.HOST
Build.ID // 修订版本列表
Build.MANUFACTURER // 硬件制造商
Build.MODEL // 版本
Build.PRODUCT // 手机制造商
Build.TAGS // 描述build的标签
Build.TIME
Build.TYPE // builder类型
Build.USER
2.android.os.Build.VERSION
// 当前开发代号
Build.VERSION.CODENAME
// 源码控制版本号
Build.VERSION.INCREMENTAL
// 版本字符串
Build.VERSION.RELEASE
// 版本号
Build.VERSION.SDK
// 版本号
Build.VERSION.SDK_INT
3.android.os.SystemClock
SystemClock.currentThreadTimeMillis();
// 在当前线程中已运行的时间
SystemClock.elapsedRealtime(); // 从开机到现在的毫秒书(手机睡眠(sleep)的时间也包括在内)
SystemClock.uptimeMillis(); // 从开机到现在的毫秒书(手机睡眠的时间不包括在内)
SystemClock.sleep(100); // 类似Thread.sleep(100);但是该方法会忽略InterruptedException
//
设置时钟的时间,和System.setCurrentTimeMillis类似,其中因为SystemClock的setCurrentTimeMillis
的permission是signatureOrSystem等级的,直
//接使用user-permission没有作用,设置的格式是毫秒,然后对年月日进行转换。
SystemClock.setCurrentTimeMillis(1000);
//
计算时间间隔
long
starttime=SystemClock.uptimeMillis();
long timeInterval = SystemClock.uptimeMillis() - starttime;
4.android.os.PowerManager
//
PowerManager的一般用法,请求和释放唤醒锁
PowerManager powerMgr = (PowerManager) getSystemService(Context.POWER_SERVICE);
int flags = PowerManager.SCREEN_BRIGHT_WAKE_LOCK | PowerManager.ACQUIRE_CAUSES_WAKEUP;
WakeLock wakeLock = powerMgr.newWakeLock(flags, "for debug purpose tag");
wakeLock.acquire(); // 获取唤醒锁
wakeLock.release(); // 释放唤醒锁
// 在游戏中,会将acquire放在onResume中;将release放在onPause,这样在程序运行时就可以保持屏幕常量;在程序处在后台时,就恢复原来的设置。
// PowerManager的其它api的使用
powerMgr.goToSleep(SystemClock.uptimeMillis() + 100); // 100ms后进入睡眠
powerMgr.isScreenOn(); // 屏幕是否亮着
powerMgr.userActivity(SystemClock.uptimeMillis()+100, true); // 相当于按home键,会引起从睡眠激活
// WakeLock的其它api
wakeLock.acquire(1000); // 获取唤醒锁,并在1000ms后释放
wakeLock.isHeld(); // 当前是否持有唤醒锁
// 是否使用引用计数,默认是启用的。引用计数应该就是第一次请求为1,第二次加1,再一次再加1。
// 在释放时,只有引用计数为0时才被视为完全释放(所以要多次调用release)
wakeLock.setReferenceCounted(true);
相关文章推荐
- 使用Android Studio调试内存问题
- android保存图片到图库
- android studio下Material Design库的使用
- Android4.0的Alertdialog对话框,设置点击其他位置不消失
- Android性能优化之避免内存泄漏的建议
- Android 通过监听收信箱获取短信,Cursor对象字段的详细信息
- android 多分辨率机型适配文件夹命名规则
- [Android]startActivityForResult启动singleTask的Activity,则onActivitResult()立即回调且resultCode为RESULT_CANCEL
- Android第三方资源使用之ImageCache
- Android第三方资源使用之ImageCache
- Android 四大组件之Service
- Android M 优化电池性能的 Doze 模式工作原理是怎样的?
- android webview js alert对话框 不能弹出 解决办法
- Android之调用本地摄像头
- android权限大全
- Android使用Unicode码对中文进行字母索引的2种方法
- Android Service的生命周期
- Android系统主题样式属性
- android adb bundle下载
- 关于安卓学习的方法(简单补充)