2010-09-22 161 views
1

在我的活動我送的意圖,瀏覽器以顯示網頁:編程方式清除瀏覽器緩存/歷史


    Intent i = new Intent(Intent.ACTION_VIEW, Uri.parse("http://ww.mywebpage.com"); 
    startActivity(i); 

我需要確保發送意圖的瀏覽器緩存和歷史前被清除,以便頁面從服務器直接加載而不是從手機加載。

到目前爲止,我已經找到了2下,但我不知道他們是正確的:


    Browser.clearHistory(getContentResolver()); 
    Browser.clearSearches(getContentResolver()); 

還與緩存不被清除。

你知道該怎麼做嗎?

回答

7

首先,假設Android上只有一個Web瀏覽器。你錯了,隨着時間的推移會越來越錯誤。鋼鐵,海豚,歌劇等已經在爲Android生產,Mozilla的Fennec也很好。此解決方案不會幫助您使用其他瀏覽器。其次,如果瀏覽器不正確地緩存你的數據,你的問題可能在服務器上(即不發送適當的緩存控制頭)。我試圖在那裏修復它,以便它能夠在所有瀏覽器中正常運行。第三,擦除用戶的全部歷史和搜索,以滿足您的要求,是相當不專業的。您希望某些桌面應用程序如何消除桌面瀏覽器的歷史記錄和搜索?

第四,您無法以編程方式清除瀏覽器的緩存。

0

是的......如果您必須在客戶端聲明更多的控制權,而不是將其固定在服務器上,那麼您需要在您的應用程序中顯示帶有完全控制權限的webview內容,而不是委託到瀏覽器(這是一個獨立的應用程序運行在一個單獨的用戶ID和單獨的安全上下文,你不能混淆)。

+0

無法解析clearHistory方法 (android.content.contentresolver) – DKV 2016-03-02 13:17:21