首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >targetSdkVersion与minSdkVersion: configChanges

targetSdkVersion与minSdkVersion: configChanges
EN

Stack Overflow用户
提问于 2013-01-11 01:58:38
回答 1查看 1.3K关注 0票数 5

我想避免在屏幕方向改变时重新启动活动。在较早的sdk版本中,这是由configChanges="orientation" (在清单中)完成的。在较新的版本中,添加了screenSize

我的minSdk是8,targetSdk是17,我发现自己处于一个奇怪的境地:我不能把screenSize放入configChanges (因为minSdk),但我的手机(4.1)会销毁任何方向改变的活动(因为targetSdk)。

有什么出路吗?我可以以某种方式防止这种破坏,而不必针对过时的Sdk (但仍然将其保留为minSdk中的一个选项)?

EN

回答 1

Stack Overflow用户

发布于 2019-06-01 03:32:52

您可以保留当前的android:minSdkVersionandroid:targetSdkVersion (在您的示例中为8和17 )。

为了能够将screenSize放入configChanges,请更改此行

target=android-someapinumber

project.properties文件中。选择someapinumber作为screenSize首次出现的android版本(例如API 13)。

虽然您要求解决特定的"screenSize“问题,但此解决方案适用于所有类似的情况,即您希望支持较旧的设备,但同时您必须使用较新的功能。在这种情况下,"screenSize“将被不知道此属性的旧设备忽略,因此您不必担心向后兼容性。在其他情况下,您可能必须在源代码中添加如下所示的条件,以确保在运行时您的应用程序不会使用在给定(旧) android版本中不可用的功能。

代码语言:javascript
复制
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP) 
{
    // Code that uses features available in LOLLIPOP and newer
    // versions of android, while the app also runs on older versions
    // and supports them because of android:minSdkVersion.
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14264271

复制
相关文章

相似问题

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