如何修改应用兼容Android 3.0系统

下文转自:

http://www.ard8.com/a/develop/advance/2011/0521/471.html

注意有关详细资料,请查看 sdk 官方文档,此文当中有一些错误

--------------------------------------------

近期很多Android开发者表示自己的应用无法兼容Android 3.0,就目前一线厂商均推出了3.0平板,下面Android吧(ard8.com)给大家说下兼容平板的方法吧:

1.下载升级Android 3.0 SDK、升级ADT插件至少为r10版本,方法参考 Android 3.0 SDK如何安装呢?

2. 如果你没有Android 3.0设备同样可以使用模拟器,不过默认情况下大多数3.0平板分辨率为1280x800即WXGA,一般19寸PC分辨率为1440x900可能显得很拘谨。

3. 在Androidmanifest.xml文件中设置下api level,兼容3.0设置为 <uses-sdk android:minSdkVersion="4"android:targetSdkVersion="11" /> 这样你的应用可以兼容从Android 1.6到3.0,当然3.1对应的API Level为12。

4. 针对资源布局提供res/layout-xlarge-land 这个界别的,一般平板相对于手机是旋转90度使用的,相当于横屏,所以加了land。

5. 尽量使用基于设备的像素单位,比如说dip、sp,同时控件注意android:layout_weight 属性的使用。

6. 如果你的应用必须要支持电话模块的,即纯wifi版无法使用,可以在androidmanifest.xml中加入
<uses-feature android:name="android.hardware.telephony" />

当然指明不需要可以使用<uses-feature android:name="android.hardware.telephony" android:required="false" />,或者 在运行时也可以调用,不过相关逻辑类要考虑不能在初始化的时候调用,
PackageManager pm = getPackageManager();boolean hasTelephony = pm.hasSystemFeature(PackageManager.FEATURE_TELEPHONY);

7.让你的应用兼容所有的分辨率

8. 如果你需要设计一个纯Android 3.x的应用,可以考虑

 
  1. <manifest...>
  2. ...
  3. <supports-screensandroid:smallScreens="false"
  4. android:normalScreens="false"
  5. android:largeScreens="false"
  6. android:xlargeScreens="true"/>
  7. <application...>
  8. ...
  9. <application>
  10. /manifest>


你可能感兴趣的:(android)