android移植程序,Android 系统属性读取,以及程序移植小技巧【转】

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开发出来的程序在其它的版本上跑就不能太依赖具体的像素值,或者经过特殊处理。我们也可以理解:为什么很多游戏的下面有一块黑屏。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值