`
chenjia66804610
  • 浏览: 151764 次
  • 来自: ...
社区版块
存档分类
最新评论
阅读更多

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

// 运行结果
/*
board: unknown
brand: generic
cpu abi: armeabi
device: generic
display: google_sdk-eng 2.1 ERD79 22607 test-keys
finger print: generic/google_sdk/generic/:2.1/ERD79/22607:eng/test-keys
host: genki.mtv.corp.google.com
id: ERD79
manufacturer: unknown
model: google_sdk
product: google_sdk
tags: test-keys
time: 1261185425000
type: eng
user: android-build
*/

 Build.VERSION

// 当前开发代号
Build.VERSION.CODENAME
// 源码控制版本号
Build.VERSION.INCREMENTAL
// 版本字符串
Build.VERSION.RELEASE
// 版本号
Build.VERSION.SDK
// 版本号
Build.VERSION.SDK_INT

// 结果
/*
REL
22607
2.1
7
7
*/

// Build.VERSION.SDK_INT可与switch搭配用
switch (Build.VERSION.SDK_INT) {
case Build.VERSION_CODES.BASE: // 1.0
	break;
	
case Build.VERSION_CODES.BASE_1_1: // 1.1
	break;
	
case Build.VERSION_CODES.CUPCAKE: // 1.5
	break;
	
case Build.VERSION_CODES.CUR_DEVELOPMENT: // current dev version
	break;
	
case Build.VERSION_CODES.DONUT: // 1.6
	break;
	
case Build.VERSION_CODES.ECLAIR: // 2.0
	break;
	
case Build.VERSION_CODES.ECLAIR_0_1: // 2.0.1
	break;
	
case Build.VERSION_CODES.ECLAIR_MR1: // 2.1
	break;
}

 

 

android.os.SystemClock

SystemClock.currentThreadTimeMillis(); // 在当前线程中已运行的时间
SystemClock.elapsedRealtime(); // 从开机到现在的毫秒书(手机睡眠(sleep)的时间也包括在内)
SystemClock.uptimeMillis(); // 从开机到现在的毫秒书(手机睡眠的时间不包括在内)
SystemClock.sleep(100); // 类似Thread.sleep(100);但是该方法会忽略InterruptedException
SystemClock.setCurrentTimeMillis(1000); // 设置时钟的时间,和System.setCurrentTimeMillis类似

// 时间间隔
long timeInterval = SystemClock.uptimeMillis() - lastTime;
// do something with timeInterval

 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); 

 

 

 转自:http://yuanzhifei89.iteye.com/blog/1168544

分享到:
评论

相关推荐

    怎样完全退出android程序

    在Android中,如果想退出Android程序,一般都是调用finish()、System.exit(0)android.os.Process.killProcess(android.os.Process.myPid())等方法来实现退出程序功能,可是在实际开发中,并不能达到完全退出应用程序...

    Caused by: android.os.NetworkOnMainThreadException错误解决办法

    好久不写Android代码手都生了,找出自己之前写的程序发现跑不了了,也没啥特别的错误提示,就看到一句有用的错误Caused by: android.os.NetworkOnMainThreadException,查了下原因上在4.0之后在主线程里面执行Http...

    Android N 7.0中报错:android.os.FileUriExposedException的解决方法

    最近在Android N 上 安装Apk时报错:android.os.FileUriExposedException: file:///storage/emulated/0/Download/appName-2.3.0.apk exposed beyond app through Intent.getData(),通过查找相关的资料终于找到了...

    Android高版本源码编译提示error: cannot find symbol import android.os.SystemProperties

    cannot find symbol import android.os.SystemProperties 前言   最近在搞Android高版本的9和10开发,正在敲着代码唱着歌,发现在Android源码目录的app下面导入import android.os.SystemProperties这个包老是不行...

    Android代码-OS.Build-Reader

    This is a development tool to show values of android.os.Build.* Try it Installing android SDK See the official android doc Create emulator The command line for creating an AVD has the following syntax...

    Android webview 遇到android.os.FileUriExposedException错误解决办法

    Android webview 遇到android.os.FileUriExposedException错误解决办法 1. 在 Manifest 文件中添加: <provider android:name=android.support.v4.content.FileProvider android:authorities=${...

    android.os.NetworkOnMainThreadException

    android.os.NetworkOnMainThreadException 解决事情应该优先解决一件事情,总是三心二意,最后塞翁失马 文章目录android.os.NetworkOnMainThreadException问题分析查阅资料解决方案知识要点: RunOnUiThread 和 new...

    Eclipse错误解决方法

    当出现提示说: Call requires API level 9 (current min is 8): android.os.StrictMode#setThrea 也就是说版本低

    Android实现获取SERIAL信息的方法

    android.os.build.serial 在API 9 中引入,如果低于9的系统可以通过这个方法获取这个信息值 java代码如下: public static String getDeviceSerial() { String serial = unknown; try { Class clazz = Class.for...

    Android百度地图定位空指针问题解决android.os.Message com.baidu.location.g.f$d.obtainMessage(int, java.lang.Obj

    问题: 在百度地图页面(Activity为singleTask)跳转到别的页面 ,离开地图页面。偶发性空指针,具体日志信息如下: 解决: 1、原本我在生命周期onStop里调用的mlocationClient.stop();...作者:Android_Mr_Zhao

    Android错误解决方法大集合

    或许困扰很多Android开发者最大的问题莫过于Bug的修改了,调Bug 改Bug,想想都头疼,以下就是一位对Bug很有经验的开发者总结出来的有关Android错误的解决方法。

    计算器代吗

    import android.os.Bundle; import android.app.Activity; import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android....

    android-weak-handler:android.os.Handler的内存安全实现

    android.os.Handler的内存安全实现 问题 Handler的原始实现始终在执行队列中始终保持对处理程序的硬引用。 张贴到android.os.Handler Message或Runnable中的任何对象将在一段时间内被硬引用。 如果创建匿名Runnable...

    资讯阅读,通过CBReader

    import android.os.AsyncTask; import android.os.Bundle; import android.support.v4.app.Fragment; import android.support.v4.app.LoaderManager.LoaderCallbacks; import android.support.v4.content....

    如何完全退出程序

    在Android中,如果想退出Android程序,一般都是调用finish()、System.exit(0)、android.os.Process.killProcess(android.os.Process.myPid())等方法来实现退出程序功能,可是在实际开发中,并不能达到完全退出应用...

    android中AsyncTask的用法

    AsyncTask的用法

    Android.rar

    Android.rar,提供了Android 一些镜像。ramdisk-u.img Android 根分区映象。system.img Andorid 系统分区映象。

Global site tag (gtag.js) - Google Analytics