我使用Android Studio作爲我的Android代碼庫,我的代碼使用ZipInputStream.java
,這是由Android SDK和JDK提供的。它與哪個版本的SDK或JDK無關。JDK庫而不是Android SDK庫
奇怪的是,當我在Android-M和更低版本的設備和模擬器上運行我的apk時,上述類的版本來自SDK,但是在Android N仿真器上,而使用相同的apk,ZipInputStream.java
來自JDK。
如何強制Android N默認使用SDK中的類,而不是JDK?
請注意,我已經通過使用api 23和24作爲目標和編譯sdk版本來構建apk,這兩個版本都是構建工具和support-v4的23.x和24.x版本。我甚至嘗試過使用JDK 7和8。似乎Android N操作系統中有一些關於如何通過SDK類選擇JDK類的問題,我可能會錯過。幫助將不勝感激。提前致謝。
*以上提到的類的版本來自SDK * no ...如果您在設備/仿真器上運行應用程序,它使用設備/仿真器的運行時庫中的ZipInputStream實現...您是如何「檢查」它的? – Selvin
我通過在文件的兩個版本中放置斷點來確認。另外,對於Android-N,其行爲與文件預期的JDK版本完全相同。對於
FoY