Android Studio编译含有@SystemApi @UnsupportedAppUsage @Hide的属性,方法,类时报错

问题来源:用到系统方法WifiMnanger.ActionLinstener时Android Studio编译报错

环境:Android 12(S)

1.将系统编译好的framework-wifi.jar,framework-minus-apex.jar放在/app/libs/文件夹中

在App的build.gradle中加入以下代码

复制代码
dependencies {
	...
    compileOnly files('libs\\framework-minus-apex.jar')
    compileOnly files('libs\\framework-wifi.jar')
    ...
}

2.在项目的build.gradle中加入以下代码

复制代码
// Top-level build file where you can add configuration options common to all sub-projects/modules.
plugins {
    id 'com.android.application' version '7.4.2' apply false
    id 'com.android.library' version '7.4.2' apply false
}
allprojects {
    gradle.projectsEvaluated {
        tasks.withType(JavaCompile) {
            options.compilerArgs.add('-Xbootclasspath/p:app/libs/framework-wifi.jar')
            options.compilerArgs.add('-Xbootclasspath/p:app/libs/framework-minus-apex.jar')
        }
    }

    gradle.projectsEvaluated {
        tasks.withType(JavaCompile) {
            Set<File> fileSet = options.bootstrapClasspath.getFiles()
            List<File> newFileList =  new ArrayList<>();
            newFileList.add(new File("app/libs/framework-wifi.jar"))
            newFileList.add(new File("app/libs/framework-minus-apex.jar"))
            newFileList.addAll(fileSet)
            options.bootstrapClasspath = files(
                    newFileList.toArray()
            )
        }
    }
}

3.还是标红,但是编译正常,运行正常

相关推荐
走在路上的菜鸟4 小时前
Android学Dart学习笔记第十六节 类-构造方法
android·笔记·学习·flutter
3824278274 小时前
Visual Studio 2022 模板的使用方法
ide·visual studio
TimeFine4 小时前
Android AI解放生产力(一):开始使用Codex Cli
android
_李小白6 小时前
【Android FrameWork】第三十三天:Camera视频流写入SurfaceView的机制
android
csj506 小时前
安卓基础之《(4)—Activity组件(2)》
android
qq_418247887 小时前
恒源云/autodl与pycharm远程连接
ide·人工智能·python·神经网络·机器学习·pycharm·图论
_李小白7 小时前
【Android GLSurfaceView源码学习】第二天:GLSurfaceView深度分析
android·学习
元气满满-樱8 小时前
LNMP架构学习
android·学习·架构
allk558 小时前
Android 渲染性能优化实战总结:从监控体系到架构落地
android·性能优化·架构
思成不止于此8 小时前
C++红黑树封装map/set核心揭秘
android