Comment définir cookie dans WebView android client
Je veux appeler une url spécifique via WebView. La page ne peut être appelé après que l'utilisateur est déjà connecté. J'utilise AsyncHttpClient bibliothèque pour effectuer la connexion de l'appel. Une fois après avoir connecté avec succès , le chargement de l'url via WebView ne semble pas reconnaître le bon en-têtes esp cookie. Mon suspect, c'est que les cookies ne sont pas correctement synchronisés entre HttpClient et WebView est HttpClient . Aucune idée pourquoi ? . Voici comment j'utilise WebView
final WebView webView = (WebView) content.findViewById(R.id.web_travel_advisory);
String url = "http://mydomainurl.com/get_data_after_login";
webView.setWebViewClient(new WebViewClient());
CookieSyncManager.createInstance(getActivity());
CookieSyncManager.getInstance().startSync();
CookieManager.getInstance().setAcceptCookie(true);
webView.getSettings().setJavaScriptEnabled(true);
webView.loadUrl(url);
Apprécier ur de l'aide .
OriginalL'auteur Tixeon | 2015-10-14
Vous devez vous connecter pour publier un commentaire.
Ohh après plusieurs heures, j'ai enfin compris pour l'obtenir, il a travaillé. Tout d'abord CookieSyncManager est obsolète sur version ultérieure d'android depuis api 21 d'après doc. Donc, a décidé de ne plus l'utiliser. Deuxièmement CookieManager est utilisé pour stocker des cookies pour WebView.
Code Final
Les principaux changements apportés à la solution: utiliser cookie.getDomain() au lieu de domaine explicite.
content que ça fonctionne 😉
pourriez vous me dire quel bibliothèque j'ai besoin de inport pour que cela fonctionne ?Android studio continue de se plaindre de la Liste<Biscuits> .En outre, je peux mentionner expressément le nom de domaine ?comment?Cette enregistre les cookies et le réutiliser si quand nous fermer et ré ouvrir l'application ?
qu'est-ce que WSHelper??
Vous pouvez obtenir votre les cookies enregistrés à partir de quelque part d'autre.
OriginalL'auteur Tixeon
Essayer ce code, après quelques changements qui fonctionne pour moi:
OriginalL'auteur Alexiscanny
Mon problème était un peu différent, mais la réponse de @Tixeon m'a donné la clé pour le résoudre. Je composais mon Cookie et en l'ajoutant à la WebView demande, mais j'ai découvert que Android était primordial mon Cookie et envoyer son propre Cookie.
Alors tout d'abord, j'ai dû supprimer tous les cookies du tableau, puis composer mon propre Témoin. C'est l'exemple de code:
Maintenant la demande contient mon Cookie et pas par défaut fourni par Android, et ma session dans WebView est de travail. Espérons que cela aide quelqu'un d'autre
OriginalL'auteur voghDev