我正在开发一个针对API 11(3.0)的应用程序,但minSDKVersion为7(2.1).
我以编程方式而不是XML方式生成PreferenceActivity.在Honeycomb中,首选项布局有一个内置的图标位置,可以在每个首选项旁边显示.您可以使用prefScreen.setIcon(R.drawable.my_icon)进行设置;
所以我不想在API 7-10上这样做.这是否足以防止崩溃?
if (android.os.Build.VERSION.SDK_INT>=11) prefScreen.setIcon(R.drawable.myIcon);
解决方法
根据
http://developer.android.com/training/basics/activity-lifecycle/starting.html,它暗示在Android 2.0及更高版本上使用SDK_INT常量可以安全地包装对更新API的调用,而不使用反射.
Caution: Using the SDK_INT to prevent older system’s from executing new APIs works in this way on Android 2.0 (API level 5) and higher only. Older versions will encounter a runtime exception.