Androidx.annotation.keep 发生了什么,新的解决方案是什么?

问题描述 投票:0回答:1

我尝试将我的 Android 注释升级为:

    implementation "androidx.annotation:annotation:1.6.0"

...但是现在这三个导入失败了:

import androidx.annotation.Keep;
import androidx.annotation.NonNull;
import androidx.annotation.StringRes;

实施这些的新方法是什么?我需要 @Keep 来确保 Java 类存在,以便我的本机代码调用它们。

(注:谷歌官方文档假装没有任何改变,一切都很好)

(注2:回退到注释:1.5.0 可以,但是新的解决方案是什么?)

java android androidx
1个回答
0
投票

这件事有后续吗?

我在对 AOSP 框架进行一些修改时遇到了类似的问题,但仅限于 @Keep 注释。

对于您的问题,您是否尝试过使用 proguard 规则?您可以在这里了解有关它们的更多信息:http://developer.android.com/guide/developing/tools/proguard.html.

这样的东西应该可以替代 @Keep 注释。:

-keep public class com.example.** { public protected *; }

AFAIK @NonNull 注释仍然存在,我没有遇到任何编译或运行时问题。

我当前的问题是 AOSP 的 CTS 测试要求 BOOTCLASSPATH 或 SHAREDLIBS 中不存在

androidx
引用,这是我需要删除的最后一个引用。

© www.soinside.com 2019 - 2024. All rights reserved.