Android 高版本(Android 9.0) packageManager.getPackageArchiveInfo 總是返回null

最近自己寫插件時,總是發現packageManager.getPackageArchiveInfo 返回爲null,但是自己權限都打開,加載路徑也是正確的,到底是爲什麼呢?

packageInfo =packageManager.getPackageArchiveInfo(path,
                    PackageManager.GET_ACTIVITIES );

原來path寫法有問題,之前的寫法:

Environment.getExternalStorageDirectory()+"/Download/lh.apk"

可是上面的寫法在Android9.0 之後就廢棄了(爲了提高用戶隱私,不建議直接訪問共享/外部存儲設備),並且不再返回可訪問的文件。

那怎麼寫了,官方推薦使用:

context.getExternalFilesDir(String type)

修改之後,返回就正確了。

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