冰箱/Xposed等系統工具
前面所提到的App之所以會下崗,主要是由于Android P提供了類似的功能。不過,Android P除了有新功能,系統機制也有所變更,這導致某些以前能用的App在新系統中無法運行,從而面臨淘汰。
在Android P中,Google極大程度地限制了非官方API的使用。Google會鎖定App所能訪問的API,系統的某些API不再提供給App接入,而且App難以再使用沒有經過認證的API。
這會造成怎樣的結果呢?一方面,直接就會導致諸多App的推送、分享功能失效,某些App之所以能夠實現推送功能,是因為使用了一些第三方的推送平臺,需要接入相關的API;另一方面,很多玩家喜聞樂見的黑科技App,也無法使用了。
非官方公開API可能無法在安卓9.0中使用了
很多可玩性高的安卓App,都會用到一些不包含在官方SDK的API。例如Xposed和冰箱等等,通過一些鉤子,可以實現普通App所難以做到的功用。
然而在Android P中,Google會限制使用非SDK方法與字段,開發者將無法對其進行訪問——無論通過直接調用、反射還是JNI等方式。如果加以嘗試,則會收到NoSuchFieldException或者NoSuchMethodException等錯誤提示。因此,好些玩家們喜聞樂見的App,基本上算是廢了,不得不在新系統中走下崗位。
老舊應用/使用老SDK應用
對于這些系統工具被Android P淘汰,有的朋友可能不以為然,畢竟這些工具普遍冷門,只有玩家才會關心。但是,被強制下崗的App,其實并不僅限于這些小眾工具,在Android P中,一票大眾經常接觸的App,可能也瀕臨淘汰。
一大堆國產App現在仍使用老舊SDK,可能面臨淘汰
Android P在新系統中,對使用老舊Target API的應用作了嚴格限制。Google在SDK增加了一項MIN_SUPPORTED_TARGET_SDK_INT新規,如果App的SDK版本低于v17,那么App將無法兼容Android P。這意味著安卓4.1包括以前版本的App,將會在Android P中遭到淘汰。
現在Android P首個開發者預覽版已經放出,開發者們也對其進行了測試,測試結果如同預料一般,舊版的App果然沒法運行。在Android P中,盡管舊版App依然能夠安裝,但開啟的時候系統會警告該App無法兼容,需要升級。目前國內不少App都仍使用老舊的SDK,恐怕在Android P的時代,這些老舊應用將會成為歷史。
總結
其實每一代安卓都會增添更多貼近實際應用的功能,也會樹立起一些前所未有的限制,這些舉措不可避免會擠壓一部分App的生存空間。
然而,每一代安卓系統雖然都會給老舊App帶來挑戰,但也往往會帶來很多新機會,例如安卓這兩年主打的物聯網、ARCore等等,都能令人看到諸多可能性。安卓9.0無疑是個劇變的版本,希望Google和App開發者們都能在這個世代的安卓中,給用戶帶來更好的體驗吧。