Android支持lib v4或v13

时间:2013-03-13 06:04:47

标签: android android-support-library

我开发了一个使用API​​ 13和min-sdk以及API 13的Android应用程序构建。我想在选项卡中加入滑动,并且出于我使用v4 support library的目的。

我有以下问题,

  1. 我应该使用哪个支持库v4或v13?
  2. 我应该将目标更改为API 14吗?更重要的是,我如何决定哪个应该是我的目标API来编译?

3 个答案:

答案 0 :(得分:25)

问题1: 正如@StinePike所说,根据你使用的最小值,你应该使用v4作为min-sdk = 4-12,如果你的min sdk是> = 13则可以使用v13。
更新正如Frank在评论中所述,修订版26.0.0及更高版本所有支持库的minsdk均为API级别14.有关详细信息,请参阅https://developer.android.com/topic/libraries/support-library/index.html#api-versions

问题2:最好的目标取决于你打算做什么,如果你想提供一些在更高的sdk级别引入的功能,你必须使用更高的target-sdk,但要确保你检查android版本不使用在具有较旧Android版本的设备上的高级sdk版本中引入的android apis

if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
    // safe to use api 11 / Android 3.0 stuf
} else {
    // only use api level <= 10 stuff
}

对于min-sdk来说是一样的。如果您需要api级别&gt; = 10的东西,则必须使用min-sdk 10

我的观点:不要使用api级别&lt; 10,它不值得... 10你达到90%的Android设备
我的意见(截至2016年4月):不要使用api级别&lt; 16,它不值得...用16你达到~95%的Android设备

用于检查android OS版本检查的分发:https://developer.android.com/about/dashboards/index.html

答案 1 :(得分:10)

来自您可以找到的developer site

  

注意:支持包包含多个支持库。每   一个具有不同的最低API级别。例如,一个库   需要API级别4或更高,而另一个需要API级别13或   更高(v13是v4的超集,包括额外的支持   使用v13 API的类)。最低版本由表示   目录名称,例如v4 /和v13 /.

我认为这清楚地回答了你的问题。如果你想支持低级版本(4或更高版本)和v4库apis fullfill你的目标然后使用它,否则使用v13

答案 2 :(得分:0)

由于android 2.3.3 - 2.3.7现在是martet的23.6%,我建议为这些设备设置minSdk = 10,尤其是google为开发人员提供了一个很好的解决方案,可以通过使用支持v4和v7来更好地练习。

对于您的问题,我发布的a detailed answer可能有所帮助。