TelephonyManager telephonyManager=
(TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
String imei=telephonyManager.getDeviceId();
String imsi=telephonyManager.getSubscriberId();
telephonyManager.getSimOperatorName();
Display display = ((WindowManager)context.getSystemService
(Context.WINDOW_SERVICE)).getDefaultDisplay();
DisplayMetrics dm = new DisplayMetrics();
display.getMetrics(dm);
int width = dm.widthPixels;
int height = dm.heightPixels;
PackageManager manager = context.getPackageManager();
String packageName = "";
int versionCode = -1;
String versionName = "";
try {
PackageInfo info = manager.getPackageInfo(context.getPackageName(), 0);
packageName = info.packageName;
versionCode = info.versionCode;
versionName = info.versionName;
} catch (NameNotFoundException e) {
handsetInfo.setVersion("unknown");
}
String model = Build.MODEL;
String platform = "Android_"+Build.VERSION.RELEASE;
程序开始是用Android1.5的SDK开发的,在1.5平台上运行正常,但是在2.0平台上XT800的屏幕宽度和高度无论如何都读不对。后来发现需要改用1.6版本的SDK,再Manifest中加入:
android:minSdkVersion="4"/>
才能正常工作。当然这样的话,在1.5的版本上就跑不了了。据说是因为Android1.6是首个支持不同屏幕像素密度的版本。这样的话1.5
SDK开发出来的程序在其它的版本上跑就不能太依赖具体的像素值,或者经过特殊处理。我们也可以理解:为什么很多游戏的下面有一块黑屏。