从高于最低要求的 API 级别调用 API

2023-11-29

我编写的应用程序的大部分内容都很好,最低 API 级别设置为 7。我想从级别 8 调用单个 API。使用较低版本 Android 的用户将在没有此“额外功能”的情况下生存。

目前我添加了@SuppressLint("NewApi")这样我的代码就可以运行;我正在 API 14 上测试它。一切正常。

我想知道该应用程序在 API 7 设备上的表现如何。这一行会被忽略吗?我的应用程序会崩溃吗?该应用程序会被 Google Play 过滤从而无法安装吗?

我想在较低的设备上忽略这一行。


这一行会被忽略吗?

No.

我的应用程序会崩溃吗?

壮观。 :-)

该应用程序会被 Google Play 过滤从而无法安装吗?

No.

我想在较低的设备上忽略这一行。

你有两个问题:

  1. @SuppressLint("NewApi")是错误的快速修复选择

  2. 您没有添加任何代码来避免在旧设备上出现此行

Use @TargetApi(...)代替@SuppressLint("NewApi"), where ...是名称(例如,FROYO)或数字(例如,8)您的方法引用的代码。

But before你这样做,将你的违规行包裹在一个检查中,看看它们是否应该在此设备上执行:

if (Build.VERSION.SDK_INT>=Build.VERSION_CODES.FROYO) {
  // then execute your code that requires API Level 8
}
// optional else block if you have some workaround for API Level 7

Your if检查将导致您的线路被避开。你的@TargetApi注释将使 Lint 停止对您大喊大叫引用太新的类或方法。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从高于最低要求的 API 级别调用 API 的相关文章

  • Android 的 Firestore 超时

    我目前正在构建一个应用程序 将用户的博客文章保存在Firestore服务器 一切正常 但我发现该帖子在不稳定的互联网连接下无法上传 我尝试设置一个超时到Firestore实例 但 Firestore 库似乎没有超时选项 问题是 由于没有超时
  • 地理编码器返回长度为零的地址

    地理编码器直到今天都工作正常 它开始返回长度为 0 的字符串 注意 这不是 Geocoder 线程的重复 我在启动线程之前使用意图服务和 AsyncTask 来获取它 并且 AsyncTask 方法在 8 个月内工作正常 检查这段代码 ht
  • Android Marshmallow 应用程序中位置的权限问题

    我正在学习开发一个 Android 应用程序 用于按照 Google 开发者论坛获取设备位置 http developer android com training location retrieve current html last k
  • Android:图形布局不起作用 - 不显示任何内容

    我的情况是 我曾经制作过一个android项目 2 2版本 但很快需要格式化我的电脑 格式化后 我再次下载了 eclipse 但是当我导入项目时 我无法使用 xml 的 图形布局 菜单 它没有向我显示如下图所示的任何内容 http img5
  • 在Android中,哪种布局更快 1. LinearLayout内的FrameLayout还是2. 一大RelativeLayout?

    我正在考虑视图的两种不同布局安排 这将是 RecyclerView 中的一行 它们是不同的 但它们都可以工作 或者作为 一个容器垂直 LinearLayout 包含多行 FrameLayout 例如LinearLayout gt Frame
  • 在 Mac 上升级到 Android Studio 3.3 后,运行卡在“安装 APK”上并且无法部署到连接的设备

    从 Mac 机器上的稳定通道升级到最新的 Android Studio 版本 3 3 后 现在当我使用连接的设备按下运行时 它会成功构建并不断告诉 正在安装 apk 但经过一段时间后 它既不安装也不显示错误 也尝试过模拟器和同样的问题 任何
  • Android studio总是乱码

    I have change the encode to UTF 8 so I got this problem who can help me I reinstalled it twice but android studio1 4 Alw
  • Android:如何检测双击?

    我在实现双击时遇到问题 好吧 我实施了onGestureListener我有gestureDetector 但我不确定问题出在哪里 这是我的代码 public class home extends TabActivity implement
  • Gradle 构建失败 - 无法解压

    我正在使用 android studio 做一个项目 最近它显示了一个错误your SDK is missing or out of date所以 我再次下载了SDK 现在它显示一个错误 Gradle Build failed 错误如下 E
  • NoClassDefFoundError:解析失败:Lio/realm/internal/LinkView

    我正在使用领域 我安装了 Stetho Realm 来查看领域数据 这就是我所做的 buildscript repositories google jcenter dependencies classpath com android too
  • 无法将库添加到我的 Android 项目

    我正在创建一个新应用程序 我想使用一些像这样的库 https github com JakeWharton Android ViewPagerIndicator https github com JakeWharton Android Vi
  • TextView 中缩进项目符号列表

    我有一个 TextView 我用 strings xml 中的字符串资源中的文本填充它 字符串资源包含 元素 用于在 TextView 内创建项目符号列表 我的问题是我想控制项目符号列表中跨越多行的行的缩进 默认情况下 文本不会缩进超过项目
  • Ctrl 单击 Eclipse 中的类显示二进制/jar 而不是源

    使用Eclipse 版本 Helios 服务版本 2 内部版本号 20110218 0911 与Android插件 我有一个 Android 项目 AndroidUtil 它被标记为我的主要 Android 应用程序的 库 项目 当我按住
  • 解析JSON数据并将其放入gridview中

    我正在开发一个应用程序 我必须在其中解析JSON数据并且必须将它们放入自定义中gridview 它应该是这样的 到目前为止 我已经在 asynctask 中解析了 JSON 数据并获取了这些值 这是我的代码 private class ge
  • Android 中 Admob 的 XML 或 Java 关键字

    我似乎找不到任何有关通过 XML 或 Java 设置 adMob 广告关键字的可靠文档 我已经尝试过中看到的方法this https stackoverflow com questions 5066129 android admob api
  • 清单合并失败:需要为 显式指定 android:exported

    我的清单文件有问题 错误消息 清单合并失败 android 需要为 明确指定导出 面向 Android 12 及更高版本的应用需要指定显式值android exported当相应的组件定义了意图过滤器时 有关详细信息 请参阅 https d
  • 片段内部类应该是静态的

    我有一个FragmentActivity具有应显示的内部类的类Dialog 但我必须做到static Eclipse 为我提供了抑制错误的功能 SuppressLint ValidFragment 如果我这样做是不是很糟糕 可能的后果是什么
  • 是否可以从外部闪存驱动器运行 java (jdk-windows)、Eclipse (indigo) 和 Android-sdk 进行 Android 应用程序开发

    我想知道我们是否可以通过在外部闪存驱动器上保存所需的软件来在我们使用的任何计算机上开发我们的android应用程序 我的意思是在闪存驱动器上安装java eclipse和android sdk 所以最后我们可以将闪存带到任何地方计算机并在任
  • 在 IntelliJ IDEA 11 中编译期间未检测到模块依赖性

    我正在开发一个 Android 应用程序 我正在尝试包含图形视图 https github com jjoe64 GraphView绘制一些图表 需要将其作为模块依赖项包含在内 执行此操作后 IntelliJ IDE 会正确检测到包 我可以
  • 在活动之间共享菜单栏

    我的应用程序上有一个菜单栏 我需要在 5 个活动之间共享该菜单栏 我的菜单栏 5 个允许在活动之间切换的按钮 对于任何活动具有完全相同的 UI 和相同的行为 因此我想共享菜单栏 XML 视图代码和控制器代码 我已经找到了一种使用共享 XML

随机推荐

  • JQuery 数据表中的 TableTools 导出不起作用

    我已经为此苦苦挣扎了两天 我已经在数据表论坛上发帖了 但没有得到回复 所以我希望这里的社区能够提供帮助 我在这里阅读过有关此问题的类似帖子 但正如许多帖子所建议的那样 我已经使用了 sSwf 的正确路径 出现导出按钮并加载所有资源 但是 单
  • UITableViewCell 无法用一根手指点击来点击,但可以用两根手指点击

    我创建了一个表视图 并且 tableViewCell 无法用一根手指单击 但是当我尝试用两根手指单击 tableViewCell 时 会发生单击事件 我不知道为什么会出现这种情况 我在 tableView 中创建了一个自定义单元格 Invi
  • 将公式转换为 CNF

    有没有办法使用 z3 将公式转换为 CNF 使用 Tseitsin 式编码 我正在寻找类似的东西simplify命令 但保证返回的公式为 CNF 您可以使用apply命令来执行此操作 我们可以为该命令提供任意战术 策略 有关 Z3 4 0
  • Crystal Reports 打印纵向而不是横向

    我在 SAP Crystal Reports 14 1 4 1327 中创建了一个非常简单的测试报告 rpt 文件 我在页面设置中将页面方向设置为横向 如果我从 Crystal Reports Designer 打印文档 它将以横向方式正确
  • 如何在Form1、WinForms C#中使用Form2的变量?

    我在 Visual Studio 2013 中有一个解决方案 其中包含两个表单 我想要当在 Form2 中按下按钮时 变量flag fb已更新 我在 Form1 中使用它的值 有什么办法可以做到这一点吗 谢谢 方法一 使用参数化构造函数在表
  • Android:PatternSyntaxException:语法错误 U_ILLEGAL_ARGUMENT_ERROR

    我在用着json io将一些 JSON 数据转换为 Java 对象 DataTransferContainer dataTransferContainer DataTransferContainer JsonReader jsonToJav
  • 使用 gnuplot 绘制两个相邻的“带框”图

    我试图将两个数据系列绘制在一张图中 作为 gnuplot 中的方框 该脚本目前如下所示 set terminal postscript eps enhanced color set title Distribution of the ext
  • C++:调用派生类的虚函数

    假设我有一个带有虚函数的类和一个以不同方式实现该虚函数的派生类 假设我还有一个用于存储派生类的基类向量 如果事先不知道派生类是什么 我将如何在向量中执行派生类的虚函数 说明问题的最少代码 include
  • 如何在任意 Java 应用程序中启用抗锯齿功能?

    尽管 Swing 能够提供抗锯齿字体 但许多 Java 应用程序默认情况下并不使用抗锯齿字体 如何强制任意 Java 应用程序使用 AA 字体 适用于我正在运行的应用程序和我正在开发的应用程序 如果您有权访问源代码 则可以在 main 方法
  • 创建色轮的功能[关闭]

    Closed 这个问题需要多问focused 目前不接受答案 这是我多次伪解决但从未完全找到解决方案的问题 问题是想出一种方法来生成N颜色 尽可能区分N是一个参数 我对此的第一个想法是 如何在空间中生成 N 个向量 使彼此之间的距离最大化
  • 单元格悬停时的工具提示图像,Google 电子表格

    我目前正在制作一个必须包含大量图像引用的 Google 电子表格 我想要实现的是 当您将鼠标悬停在单元格上时 会出现图像 如工具提示 I found 这个小部件在 Google Developers 上 但是当我将代码添加到电子表格时什么也
  • IE9 下的 FakeSmile

    我正在尝试在 IE9 中伪造 SMIL 支持假笑 我动态创建 SVG 元素 添加带有 animate 元素的 rect 元素并调用 beginElement IE9 给我一个错误 对象不支持属性或方法 beginElement 静态 SVG
  • 在数据库中存储标签的最有效方法是什么?

    我正在我的网站上实现一个类似于 stackoverflow 使用的标签系统 我的问题是 存储标签以便搜索和过滤标签的最有效方法是什么 我的想法是这样的 Table Items Columns Item ID Title Content Ta
  • 无法在运行时修改mapred.job.name。它不在允许在运行时修改的参数列表中

    我正在尝试在气流中运行一些蜂巢作业 我建立了custome jdbc 连接 您可以在图中看到 我可以通过 Airflow Web ui 查询 Hive 表 数据分析 gt 即席查询 我还想运行一些来自互联网的示例 dag 文件 File N
  • “is”运算符未按预期工作

    看看这段代码 import re ti abcd tq abcdef check abcd re compile abcd print id check abcd search ti print id check abcd search t
  • 检查 Javascript 函数接受多少个参数?

    With arguments length我可以看到有多少参数传递给函数 但是有没有办法确定一个函数可以接受多少个参数 以便我知道应该传入多少个参数 Function length会完成这项工作 在我看来真的很奇怪 function tes
  • tkinter.TclError:图像“pyimage3”不存在

    我在使用一个在屏幕上显示图像两秒钟然后被破坏的函数时遇到问题 当程序运行时 函数初始调用程序正常工作 但如果随后通过 tkinter 中内置的按钮调用该函数 则会出现错误 appcwd os getcwd user32 ctypes win
  • mvc 大写模型 vs 小写模型

    我正在开发一个 MVC 5 项目 对 MVC 来说非常陌生 我注意到代码中的这一行 Html DropDownListFor model gt model ContractorId Model Contractors 页面顶部的指令是 mo
  • 我可以更改之前所有提交中的姓名吗?

    我想在我的所有提交中更改我的名字 姓氏和电子邮件 可以吗 Use git filter branch git filter branch commit filter if GIT AUTHOR NAME Josh Lee then expo
  • 从高于最低要求的 API 级别调用 API

    我编写的应用程序的大部分内容都很好 最低 API 级别设置为 7 我想从级别 8 调用单个 API 使用较低版本 Android 的用户将在没有此 额外功能 的情况下生存 目前我添加了 SuppressLint NewApi 这样我的代码就