Android studio使用SDK隐藏API方法

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/techelefeng/article/details/59549241
方法一:

1. 编译 Android 源码

2. 找到 \out\target\common\obj\JAVA_LIBRARIES\framework_intermediates\classes.jar 文件,拷贝出来,重命令 framework.jar。

3. 使用 Android SDK Manager 下载SDK,拷贝出SDK目录的 android.jar。

4. 使用 Beyond Compare 工具比较二者,将 framework.jar 中的同名文件拷贝到 android.jar 中进行覆盖。

5. 使用 新合成的 android.jar 替换原SDK目录的 android.jar。


6. 如果还有其他API报错,也可用同样方法,在 \out\target\common\obj\JAVA_LIBRARIES 目录找到报错API的jar包,

合成进 android.jar。



方法二:

来源:http://stackoverflow.com/questions/27441398/how-to-put-my-libraries-in-front-of-android-jar-by-editing-build-gradle-in-andro

1. 同方法一拷贝出 framework.jar,放到 android studio 工程 app/libs 目录下。

2. 修改android studio工程根目录的 build.gradle 文件,在 allprojects 下添加如下配置:

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

3. 修改android studio工程目录 app/build.gradle文件,dependencies 中添加 framework.jar。

dependencies {
    provided files('libs/framework.jar')
}

4. 同理添加其他报错API的jar包,例如 core.jar

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

dependencies {
    provided files('libs/framework.jar')
    provided files('libs/core.jar')
}


没有更多推荐了,返回首页