Cordova InAppBrowser очистить историю поиска - PullRequest
0 голосов
/ 01 февраля 2019

Я создаю приложение, в котором вы можете открыть Google, чтобы найти решение по ответу:

 ref = cordova.InAppBrowser.open('https://google.nl/', '_blank', 'clearsessioncache=yes, clearcache=yes');

Несмотря на то, что я отправляю свойства clearsessioncache = yes, clearcache = yes, и я не вошел в системув Google он продолжает показывать результаты предыдущего поиска, когда я вхожу в окно поиска.

Может кто-нибудь объяснить, почему история продолжает показываться на «предлагаемых» сайтах?И если есть какой-то способ предотвратить это.

1 Ответ

0 голосов
/ 05 февраля 2019

Нашел ответ сам.Надеюсь, что это поможет кому-то еще с такой же проблемой:

История поиска Google хранится в localStorage.Поэтому очистка localStorage перед отображением InAppBrowser решает проблему:

this.ref = cordova.InAppBrowser.open('https://www.google.nl/', '_blank', 'clearsessioncache=yes,clearcache=yes,closebuttoncaption=Terug,closebuttoncolor=#4286f4,hideurlbar=yes,hidden=yes');
this.ref.addEventListener('loadstop', () => {
    var init = false
    this.ref.addEventListener('loadstop', () => {
        if (!init) {
            // clear localStorage to clear Google search history
            this.ref.executeScript({
                code: `
        (function() { 
            localStorage.clear();
            return true;
         })()` }, _ => {
                    // cache is cleared. Now we can show the browser.
                    this.ref.show();
                    init = true;
                });
        }
    });
});
...