咱們使用Eclipse進行android開發時,使用的是ADT中提供的SDK,裏面是不包含@hide函數和變量的。由於android爲了兼容、安全等緣由,在提供SDK時,把這些函數給隱藏了。可是,不少時候,咱們又須要使用這些函數,所以咱們須要手動添加android SDK。例如,當咱們使用AudioManager時,當須要看某種streamType是否mute時,能夠調用isStreamMute(int streamType)這個方法,可是由於它是@hide的,因此咱們就須要引入本身的sdk,才能編譯經過。android
android系統編譯時,當編譯「include $(BUILD_JAVA_LIBRARY)」時,會在$ANDROID_SOURCE_BASE/out/target/common/obj/JAVA_LIBRARIES生成中間文件,當咱們須要使用某些類庫時,能夠從這裏面找。安全
isStreamMute(int streamType)在framework.jar中,咱們從out/target/common/obj/JAVA_LIBRARIES/framework_intermediates中,將classes.jar拷貝到本地,並重命名爲framework.jar。eclipse
在eclipse中右鍵工程->Properties->Java Build Path->Libraries->Add External JARide
點擊Order and Export,將framework.jar 置頂函數
如今,咱們就能夠使用AudioManager中的isStreamMute(int streamType)方法了ui