今天又是“咔嚓”、“窟窿”、“轟隆”,不曉得哪位大仙在渡劫。真的是風生水起,虎虎生威!!!言歸正傳:
描述:最近做了從服務器下載apk到手機內存,然后安裝打開以及 從服務器下載pdf文件直接打開瀏覽2個小功能。
問題:權限問題(安卓6.0以上直接在AndroidManifest.xml添加權限沒用,必須要動態獲取權限)
具體代碼里遇到的問題:
1.Pk文件或者pdf文件沒有下載到手機里面,最后查找原因,是因為沒有獲取到存儲權限
2.pdf文件下載到手機之后,點擊獲取到存儲權限,顯示一個空白頁,必須要返回上一級重新進入。 (還有一個小問題:直接打開pdf文件,會先顯示一個空白頁,再顯示pdf文件內容)
解決方案:以存儲權限(WRITE_EXTERNAL_STORAGE)為例,剛開始不曉得哪里出了問題,在網上找了好多代碼調試(一個權限獲取,寫了50行代碼,真的是 I 服了 me),
最后還開了線程,專門獲取權限,搞得太復雜了。
今天突然頓悟,一氣之下,刪除了原先所有的代碼,最后寫了2個非常簡單的小方法,居然成功解決了之前的問題。
具體代碼:
public void checkPemission() {
int hasWritePermission = PermissionChecker.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE);
if (hasWritePermission != PermissionChecker.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}, 9);
} else {
downFile();
}
}
public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
if (requestCode == 9 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
downFile();
}
}
downFile()———— 是自己下載文件的方法,就不貼了, 還有安裝apk文件,直接打開、顯示pdf文件的方法,有需要的小伙伴直接留言或者加qq:2832440535交流,相互學習,共同提高!