=11)"是否需要反射-6ren"> =11)"是否需要反射-我正在开发一个面向 API 11 (3.0) 但 minSDKVersion 为 7 (2.1) 的应用。 我以编程方式而不是使用 XML 生成我的 PreferenceActivity。在 Hone-6ren">
gpt4 book ai didi

android - 如果我使用 "if (android.os.Build.VERSION.SDK_INT>=11)"是否需要反射

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:33:35 25 4
gpt4 key购买 nike

我正在开发一个面向 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.

关于android - 如果我使用 "if (android.os.Build.VERSION.SDK_INT>=11)"是否需要反射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6891176/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com