亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

android.os.FileUriExposedException: 在 android.os.

android.os.FileUriExposedException: 在 android.os.

慕桂英4014372 2023-04-19 16:48:16
我正在按照本教程使用 FileProvider 而不是Uri.FromFile()但是我不確定如何在我的服務中使用 FileProvider。FileProvider.getUriForFile()需要第一個參數的上下文,但因為我在我的服務中使用它,所以我沒有活動上下文。我應該做些什么?我需要改變這個:Uri swatchImageUri = Uri.fromFile(favoritesImageFile);對于他們上面的建議。這是我在不使用 FileProvider 的情況下遇到的當前異常:2019-07-23 23:04:42.748 11034-11034/com.company.projname E/AndroidRuntime: FATAL EXCEPTION: main    Process: com.company.projname, PID: 11034    android.os.FileUriExposedException: file:///storage/emulated/0/Android/data/com.company.projname/cache/colors.png exposed beyond app through ClipData.Item.getUri()        at android.os.StrictMode.onFileUriExposed(StrictMode.java:1978)        at android.net.Uri.checkFileUriExposed(Uri.java:2371)        at android.content.ClipData.prepareToLeaveProcess(ClipData.java:963)        at android.content.Intent.prepareToLeaveProcess(Intent.java:10216)        at android.content.Intent.prepareToLeaveProcess(Intent.java:10222)        at android.content.Intent.prepareToLeaveProcess(Intent.java:10201)        at android.app.Instrumentation.execStartActivity(Instrumentation.java:1667)        at android.app.Activity.startActivityForResult(Activity.java:4586)
查看完整描述

2 回答

?
GCT1015

TA貢獻1827條經驗 獲得超4個贊

詮釋行:

 Uri swatchImageUri = FileProvider.getUriForFile(//,
                    BuildConfig.APPLICATION_ID + ".provider",
                    swatchImageFile);

將活動作為第一個參數傳遞:

 Uri swatchImageUri = FileProvider.getUriForFile(activity,
                BuildConfig.APPLICATION_ID + ".provider",
                swatchImageFile);


查看完整回答
反對 回復 2023-04-19
?
Cats萌萌

TA貢獻1805條經驗 獲得超9個贊

我應該做些什么?

Service是一個Context。getUriForFile()因此,如果您直接在 a 中調用Service,請使用thisfor the Context


查看完整回答
反對 回復 2023-04-19
  • 2 回答
  • 0 關注
  • 154 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號