Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

Ephmeral session or how to clear logged in state in WKWebView after logout?

Ouverte
#294 2 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
4/5
Temps estimé
3-5 jours
Accessibilité débutants
35/100
Type d'issue
Bug
Clarté
Plutôt claire
Activité
À l'abandon
Stack technique
ios, swift

Piste de recherche

Commencez par reproduire la séquence de login, logout, puis de second login dans WKWebView décrite dans l’issue. Suivez Google SignIn signOut() ainsi que la gestion de WKWebView, HTTPCookieStorage et WKWebsiteDataStore. Le travail est terminé lorsque le WKWebView rouvert n’affiche plus le compte Google précédemment mis en cache après le logout.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

bug triage

Describe the bug
I'm wondering how to enable ephemeral session using Google SignIn?
Or how to correctly clear cookies in WKWebView after Google SignIn signOut() method?

To Reproduce
Steps to reproduce the behavior:

  1. Login using Google SignIn
  2. Opens WKWebView with no google account signed in (email field is cleared)
  3. After entering credentials and successful login try to logout
  4. Login again
  5. Opens WKWebView with cached google account

Expected behavior
(5) Opens WKWebView with no google account signed in (email field is cleared)

Screenshots
none

Environment

  • Device: iPhone Simulator
  • OS: iOS 16.2
  • Browser: Safari

Additional context
I tried to clear cookies

  1. In iOS Settings-Safari-Clear History and Website Data

  2. Programmatically:

func clearAllCookies() {

         let url = URL(string: "https://accounts.google.com/Logout")!
         UIApplication.shared.open(url, options: [:], completion: nil)

        if let cookies = HTTPCookieStorage.shared.cookies, cookies.count > 0 {
            HTTPCookieStorage.shared.removeCookies(since: .distantPast)
            print("All cookies deleted")
        }
        
        let dataStore = WKWebsiteDataStore.default()
        dataStore.fetchDataRecords(ofTypes: WKWebsiteDataStore.allWebsiteDataTypes()) { records in
            records.forEach { record in
                dataStore.removeData(ofTypes: record.dataTypes, for: [record], completionHandler: {
                    print("Deleted:", record)
                })
            }
        }
    }

None of the above worked.

Langage dominant
Objective-C
Étoiles
756
Forks
283
Merge moyen
8 j 10 h
PR mergées (30 j)
5

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de google/GoogleSignIn-iOS

Toutes les issues de google/GoogleSignIn-iOS

Issues similaires

Plus d'issues Objective-C

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.