java - Android Studio 无法从暴露的 SDK 中找到隐藏的属性
问题描述
我想在我的项目中使用一些隐藏的属性,如果我用暴露的属性替换默认值,我就可以做到,$SDK_PATH/platforms/android-27/android.jar
但是android.jar
每次我想处理这个项目时,我都需要手动替换 android.jar 文件另一个,然后将其替换为原始的。
我发现有一种方法可以android.jar
通过 gradle(来源例如:here)将公开的文件添加到其依赖项中。所以我做到了:
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
compileOnly files('platform/android-27/android.jar')
implementation 'com.android.support:appcompat-v7:27.1.1'
}
我可以做 gradle 同步,gradle 可以看到文件,但构建项目失败,error: cannot find symbol variable INSTALL_REPLACE_EXISTING
.
我在以下代码中使用变量(实际上是常量)的代码:
File file = new File(apkPath);
pm.installPackage(Uri.fromFile(file), observer, PackageManager.INSTALL_REPLACE_EXISTING, "com.example.pminstaller");
请问,我还应该怎么做才能让它工作?
编辑: 我对这个问题有所了解。我可以找到隐藏在默认 SDK 中的 EthernetManager 之类的类,但我不能使用默认 SDK 中未隐藏的类中的隐藏方法。添加带有隐藏 API 的 android.jar 文件后,该项目有两个具有相同包名的类,它选择默认的一个。
如何强制 gradle 选择隐藏的?
解决方案
推荐阅读
- javascript - Angular 的 nativeElement 的 offsetWidth 为 0
- python - Gensim 导入错误“ImportError:DLL 加载失败:%1 不是有效的 Win32 应用程序。”
- objective-c - ios 13 - 带有 UISearchBar _searchField 的自定义 SearchBar 不起作用
- java - System.arraycopy 性能
- c# - 实体之间通过服务层进行通信
- python - 如何添加带有回调功能的 WeakValueDictionary?
- android - 启用/禁用夜间模式时如何从另一个活动重新创建活动?
- python - 如何通过“ResourceNotFound:请求的资源不存在”错误
- reactjs - 我在哪里可以找到我的 projet 在反应中的文件夹,我在我的桌面上看不到它
- python - 使用 pandas 数据框中的特征创建计算器