gpt4 book ai didi

javascript - 如何在 API 17 下的构建中忽略 @JavascriptInterface 注释 -Android

转载 作者:太空宇宙 更新时间:2023-11-03 10:48:02 24 4
gpt4 key购买 nike

@JavascriptInterface 注释适用于 api 17 及更高版本。对于我的项目,无法找到注释,因为我的目标 api 设置为 13:

my project build target

在我的 list 中,最小 sdk 是 11:

 <uses-sdk
android:minSdkVersion="11"
android:targetSdkVersion="18" />

为什么我必须进入项目构建目标(例如,项目 > 属性 > Eclipse 中的 Android)并将其更改为 API 17+ 作为解决方案。现在我必须针对该 SDK 进行构建,而我真正想做的就是忽略 API 17 以下任何内容的注释。无论如何我可以做到这一点吗?我不喜欢针对 api 17 进行构建,然后发现我的代码无法在先前版本上运行的想法。我的目标是确保我的应用程序可以在 api 13 到 18 上运行。如果 commonsWare 在附近,也许他可以建议我缺少的东西......

最佳答案

For my project the annotation cannot be found as my target api is set to 13:

然后修复它,或者将您的 android:targetSdkVersion 设置得足够低,以至于您不需要 @JavascriptInterface

Why do i have to go into the project build target (e.g., Project > Properties > Android in Eclipse) and change it to API 17+ as a resolution.

因为 @JavascriptInterface 在 API Level 17 之前不存在,就像 DisplayManager 在 API Level 17 之前不存在一样。

Now i have to build against that SDK when all i really want to do is ignore the annotation on anything below API 17.

由于您的构建目标不会影响除您可用的类、方法、注释等之外的任何内容,所以我看不到这个问题。

I dont like the idea of building against api 17 and then later finding out i have code that wont run on prior releases.

一年多来,Lint 一直在报告 API 级别违规。只需确保您的 android:minSdkVersion 设置正确即可。

毕竟,您已经依赖于此,因为您的 android:minSdkVersion 设置为 11 并且您的构建目标目前已设置到 13。这意味着您正在计算 Lint 来报告您在哪里使用 API 级别 12 和 API 级别 13 API,以便您可以正确处理它们。通过提高构建目标,您所做的就是增加您依赖 Lint 的事情的数量。

关于javascript - 如何在 API 17 下的构建中忽略 @JavascriptInterface 注释 -Android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19014430/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com