繁体   English   中英

Android最低SDK问题

[英]Android Minimum SDK Issue

我有一个需要使用的功能,但是我需要将最小SDK设置为23,才能使用它。 问题是,我们的应用程序通常在许多较低的SDK设备上运行。 有什么方法可以设置项目以允许我在仍然使用较低的最低SDK目标的情况下编译应用程序?

最低SDK问题

我有一个需要使用的功能,但是我需要将最小SDK设置为23,才能使用它。

您需要将compileSdkVersion设置为23。

有什么方法可以设置项目以允许我在仍然使用较低的最低SDK目标的情况下编译应用程序?

将您的minSdkVersion设置为您想要的任何值。 将您的compileSdkVersion设置为23或更高。 然后,确保仅在API Level 23+设备上调用canDrawOverlays() ,例如通过检查Build.VERSION.SDK_INT

在尝试调用此函数之前,请检查api是否为23或更高版本:

if (android.os.Build.VERSION.SDK_INT >= 23) {
    Settings.canDrawOverlays(this);
} else {
// I don't think you need to do anything, I believe canDrawOverlays is 
//functionally true for older APIs
}

您是否已经查看了“ 支持不同的平台版本”页面?

如果要在所有平台上使用canDrawOverlays(...)方法,则根本不能:从版本23开始仅在API中支持该方法。但是,如果仅当平台版本> = 23(意味着:仅在安装了AT LEAST Marshmallow的设备上),您可以:

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.MARSHMALLOW) {
    Settings.canDrawOverlays(...)
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM