所以我只需要将我的最低API级别提高到11以获得偏好(addpreferenceresource已经折旧) - 结果显示9-10占据了50%的市场份额。所以我的问题是,为了迎合姜饼市场而禁止警告是否更好?或者在不使用偏好片段的情况下有不同的方式来制作我的偏好参考?
答案 0 :(得分:4)
我会实现两种类型(在11+中工作的那种和在10中工作的那种),然后对它们使用条件检查。这在this answer中写得非常详细。
基本上,您最终使用OtherPreferencesActivity
设置PreferenceFragment
,然后使用已弃用的PreferencesActivity
设置PreferenceActivity
。 (只要您使用版本检查,以便在将来删除它时,它不会尝试找到它。
if (Build.VERSION.SDK_INT < 11) {
startActivity(new Intent(this, PreferencesActivity.class);
} else {
startActivity(new Intent(this, OtherPreferencesActivity.class);
}
请记住,您希望让他们尽可能多地使用彼此的方法,以免最终复制代码。
最后提示:@TargetApi(11)
和@SuppressWarnings("deprecation")
会派上用场。只需小心,这样做就不会忽略其他弃用。
答案 1 :(得分:0)
&#34;折旧&#34;并不代表你不能使用它,如果你运行代码就会破坏你的系统。这意味着官方不建议使用,并且可以从api中删除此方法。将来我们不知道什么时候。所以我想说现在就保存在这种情况下使用了。