旗浩Android 10.0 根文件系統(tǒng)和編譯系統(tǒng)
2023-03-03 22:28 作者:春風(fēng)吹生生生生 | 我要投稿
問題場(chǎng)景:
如果你的app下的build.gradle設(shè)置了compileSdkVersion 30,且targetSdkVersion 30。你測(cè)試手機(jī)剛好是Android 11的。如果文件根目錄還是Environment.getExternalStorageDirectory()就會(huì)創(chuàng)建失敗。
log錯(cuò)誤提示:
E/BitmapFactory: Unable to decode stream: java.io.FileNotFoundException: /storage/emulated/0/Starwberry/img/local_sendpic_temp.jpg: open failed: ENOENT (No such file or directory)
不用去看是否是讀寫權(quán)限問題,Android 11根本沒有這目錄了
解決方案:
方式一:把compileSdkVersion和targetSdkVersion降到29以下(我沒測(cè),理論上可以)
方式二:加版本判斷獲取根目錄

標(biāo)簽: