Android Studio使用@hide的API时的问题

来源:互联网 发布:羽绒服 知乎 编辑:程序博客网 时间:2024/05/01 23:11

在我们桌面中需要使用一些@hide修饰的api,所以我们自己会弄一个framwork包,然后在工程中引用这个包(相当于是替换了工程中默认的android.jar包),在studio中依旧会提示没找到该方法。这是由于配置的问题,所以修改一些配置就可以了。

1、首先需要在导入framework.jar包的时候,把我们平时导入的方式compile该为provide。
2、其次,在我们module(一般是主module即app)下会自动生成app.iml文件,打开这个文件,找到orderEntry这个标签,
把我们的framework.jar移动到最前面(也即移动到sdk的前面)。如:
<orderEntry type="library" exported="" name="framework" level="project" />
    <orderEntry type="library" exported="" name="qiku-framework" level="project" />
    <orderEntry type="jdk" jdkName="Android API 23 Platform" jdkType="Android SDK" />
3、再次,我们修改工程的build.gradle文件。增加编译选项。
在allproject标签下,repositories同级目录下,添加。
allprojects {
    repositories {
        maven{ url 'http://10.100.12.200:8081/nexus/content/repositories/central/'}
//jcenter()
    }


    gradle.projectsEvaluated {
        tasks.withType(JavaCompile) {
            options.compilerArgs.add('-Xbootclasspath/p:app/other_libs/qiku_framework.jar');
            options.compilerArgs.add('-Xbootclasspath/p:app/other_libs/framework.jar');
        }
    }
}


具体可参考该篇:https://www.mobibrw.com/2016/5122

0 0