如何得到包含隐藏API的Android类库
16lz
2021-01-23
Android SDK的很多API是隐藏的,我无法直接使用。但是我们通过编译Android系统源码可以得到完整的API库。 编译Android系统源码后可以在out\target\common\obj\JAVA_LIBRARIES目录中有它所有API库(java)。 当然对于一般情况,out\target\common\obj\JAVA_LIBRARIES\framework_intermediates\classes.jar对于我们来说就足够了。 我们可以通过这个classes.jar这种Android类库加入到你的Eclipse环境的Android工程中,以便使用隐藏的API。 关于在Eclipse的Android工程中如何使用这些API库的更多内容,请参考《 Android中使用隐藏API(大量图解)》 如果想提取完整的API的话,可以在编译Android系统源码后通过getDebugJar.sh脚本文件来完成该工作。 DESTINATION_FOLDER=Debug_libs SOURCE_FOLDER='android/out/target/common/obj/JAVA_LIBRARIES' FILE_NAME='classes-full-debug.jar' echo $DESTINATION_FOLDER if [ -d $DESTINATION_FOLDER ] then echo "Checking destination ... OK" else echo "Creating destination ..." mkdir $DESTINATION_FOLDER if [ $? -ne 0 ] then echo "Error!" exit fi fi echo "Copy files ..." dirs=`ls $SOURCE_FOLDER | tr '\n' ' '` for i in $dirs do if [ -f ${SOURCE_FOLDER}/${i}/$FILE_NAME ] then file=${i%_intermediates}-${FILE_NAME} echo Copy $file cp ${SOURCE_FOLDER}/${i}/$FILE_NAME ${DESTINATION_FOLDER}/$file if [ $? -ne 0 ] then echo "Error! Cannot copy ${SOURCE_FOLDER}/${i}/$FILE_NAME" exit fi fi done 注意1:关于tr命令请参考《 tr命令详解》
更多相关文章
- android不是内部或外部命令,也不是可运行的程序或批处理文件
- ubuntu 使用adb shell命令识别android设备
- android基础知识15:获得android系统信息04—ActivityManager
- 【源码分享下载】每日更新之Android快速开发框架LoonAndroid
- android 5.0系统 EditText控件
- Android属性系统