google source签名文件参考:https://android.googlesource.com/platform/build/+/donut-release/target/product/security/
pem转jks来实现系统签名文件:https://blog.csdn.net/cxq234843654/article/details/51557025
项目需要实现以太网的管理功能,查阅源码后得知EthernetManager属于系统接口,具有@hide属性,所以在Android SDK中找不到这些接口,编译会失败。
EthernetManager接口具有系统权限,需将APP变成系统应用才可正常使用。
解决编译问题
一、我们先获取并编译Andorid源码,找到以下文件,解压后可以看到,classes.jar中包含所有API
$ANDROID_SOURCE/out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/classes.jar
二、下载BeyondCompare工具,将此classes.jar和工程中使用的android.jar比对,将用到的部分合并到android.jar中
解决运行问题
一、进入以下目录获取系统签名文件platform.pk8和platform.x509.pem
# ls $ADNDROID_SOURCE/build/target/product/security
platform.pk8
platform.x509.pem
二、进入以下目录找到签名工具signapk.jar
$ANDROID_SOURCE\out\host\linux-x86\framework