第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

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

在片段中使用 MediaScannerConnection.scanFile()?

在片段中使用 MediaScannerConnection.scanFile()?

藍山帝景 2021-10-27 16:29:50
我正在Fragment異步下載文件,并希望MediaScannerConnection.scanFile()在下載完成時調(diào)用。如果我坐下來等待下載完成而不離開我的 Fragment(或其托管活動),我就能獲得想要的結(jié)果。我面臨的問題是MediaScannerConnection.scanFile()需要一個上下文,我不想將用戶限制在一個Fragment/ 內(nèi)Activity,以便上下文不為空。我如何MediaScannerConnection.scanFile()在后臺使用,以便我可以掃描文件并Toast在掃描完成時顯示一個,同時仍然在我的應(yīng)用程序的其他部分導(dǎo)航(甚至跳出我的應(yīng)用程序)?這就是我目前正在掃描的方式(帶有上下文):public static void mediaScanFile(Context context, String path) {    MediaScannerConnection.scanFile(context,            new String[]{path}, null,            new MediaScannerConnection.OnScanCompletedListener() {                public void onScanCompleted(String path, Uri uri) {                    Log.d("Tag", "Scan finished. You can view the image in the gallery now.");                }            });}
查看完整描述

1 回答

?
UYOU

TA貢獻1878條經(jīng)驗 獲得超4個贊

首先,從 a 下載一個Fragment可能很快就會被破壞的文件不是一個好主意。您應(yīng)該改用前臺服務(wù)。


如果您仍然想堅持使用片段,在您的情況下,您可以使用應(yīng)用程序上下文。


在開始下載之前,將應(yīng)用程序上下文的引用存儲為片段中的字段。


Context appContext;


// Inside onCreateView

appContext = getContext().getApplicationContext();

然后您可以使用應(yīng)用程序上下文來掃描媒體。


這不會導(dǎo)致內(nèi)存泄漏,因為應(yīng)用程序上下文是單個共享實例,并且在應(yīng)用程序被終止之前不會被銷毀。


查看完整回答
反對 回復(fù) 2021-10-27
  • 1 回答
  • 0 關(guān)注
  • 293 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號