首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否可以将targetSdkVersion设置为小于minSdkVersion?

是否可以将targetSdkVersion设置为小于minSdkVersion?
EN

Stack Overflow用户
提问于 2015-08-11 15:33:55
回答 2查看 1.7K关注 0票数 3

我需要Android API-level 11的特性,但是如果我将targetSdkVersion设置为10,那么我会得到我想要的老式菜单(带有菜单按钮)。设置这些值是否“合法”,或者targetSdkVersion必须大于或等于minSdkVersion?

(注意:它似乎起作用了!)

EN

回答 2

Stack Overflow用户

发布于 2015-08-11 15:49:09

正如document关于android:targetSdkVersion所说的,

一个整数,指定应用程序所针对的

级别。如果未设置,则默认值等于指定给minSdkVersion的值。此属性通知系统您已针对目标版本进行了测试,系统不应启用任何兼容性行为来维护应用程序与目标版本的前向兼容性。该应用程序仍然能够在较旧的版本(下至minSdkVersion)上运行。

在任何情况下,targetSdkVersion都应该始终大于或等于minSdkVersion,因为您的应用程序绝不能在minSdkVersion以下运行。如果你设置的targetSdkVersion小于minSdkVersion,这意味着你告诉安卓系统你已经在targetSdkVersion上测试了这个应用,但这是不可能的(因为你的应用只能在minSdkVersion低的设备上运行)。

因此,矛盾的是,targetSdkVersion应该始终大于等于minSdkVersion

票数 4
EN

Stack Overflow用户

发布于 2015-08-11 15:57:47

始终使targetSdkVersion大于等于minSdkVersion

您可以绕过android:targetSdkVersion版本,使用特定接口级别的功能。解决这个问题的最好方法是在运行时以编程方式确定设备版本,并执行特定于API的实现,而不是指定硬编码值。

看这里,

代码语言:javascript
复制
  // Make sure we're running on Honeycomb or higher
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
        // set the new menu styles
    } else {
      // do nothing and it will show the default theme
}

在这里查看官方文档,

http://developer.android.com/training/basics/supporting-devices/platforms.html#version-codes

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31935803

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档