最近調(diào)試項(xiàng)目的時(shí)候遇到如下錯(cuò)誤:
error: attribute android:requestLegacyExternalStorage not found.
error: failed processing manifest.
這個(gè)錯(cuò)誤的原因是在AndroidManifest.xml的application中增加了一行配置
"android:requestLegacyExternalStorage="true"
經(jīng)過分析和嘗試,發(fā)現(xiàn)是module的compileSdk小于29時(shí),會(huì)提示該錯(cuò)誤,大于等于29時(shí)就正常。
經(jīng)過分析發(fā)現(xiàn),"android:requestLegacyExternalStorage="true"這個(gè)屬性在Android 大于等于29以上才有,29以下沒有,這個(gè)是Google的臨時(shí)過渡方案,整體來說,Google還是不希望Android app可以隨意操作沙箱(一般是"/data/data/packageName")以外的存儲(chǔ)權(quán)限的,所以Android 29以后開始做了調(diào)整。29以后如果需要操作非沙箱路徑,必須配置"android:requestLegacyExternalStorage="true"屬性才行。
綜上所述,解決該問題的方法有幾種:
1、將compileSdk設(shè)置到29及以上;文章來源:http://www.zghlxwxcb.cn/news/detail-556600.html
2、如果compileSdk非要設(shè)置在29以下,那么就刪除"android:requestLegacyExternalStorage="true"這個(gè)設(shè)置,如果是第三方庫配置的該屬性,那么在主項(xiàng)目的AndroidManifest.xml的application增加以下配置"tools:remove="android:requestLegacyExternalStorage"文章來源地址http://www.zghlxwxcb.cn/news/detail-556600.html
到了這里,關(guān)于error: attribute android:requestLegacyExternalStorage not found.error: failed processing manifest.的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!