Glide: Root cause java.io.FileNotFoundException: No content provider

使用Glide加載圖片時,在android7.1.2上一切正常,在android9上加載不出來,log也沒有錯誤日誌,最終終於在as的“Run”選項卡下找到了蛛絲馬跡,提示:Glide: Root cause java.io.FileNotFoundException: No content provider

最終在stackoverflow中找到一位老哥的答案,https://stackoverflow.com/questions/49706014/glide-filenotfoundexception-no-content-provider-when-loading-images-from-intern#

具體的解決方式就是在清單文件的application節點下添加android:usesCleartextTraffic="true"即可

<application
        android:usesCleartextTraffic="true"
        ……

因爲從Android 9.0(API級別28)開始,明文支持在默認情況下被禁用,來確保所有到的連接始終通過HTTPS完成,以保護敏感流量免受惡意網絡的攻擊。大概意思就是爲了保護應用安全,網絡傳輸默認禁止使用http了,推薦使用https。

當然也可以創建一個配置文件來配置只訪問一個特定的域,具體參考https://stackoverflow.com/questions/49706014/glide-filenotfoundexception-no-content-provider-when-loading-images-from-intern#鏈接

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章