SORU
30 EKİM 2009, Cuma


Cookie Sorunu Android Web Görünümü

Benim android bir oturum tanımlama için kullanılacak app gönderdiği bir server var iletişim kimliği doğrulanmış. Bir URL ile bir web görünümü yüklemeye çalışıyorum aynı sunucuya işaret ve geçirmeye çalışıyorum oturumda kimlik doğrulaması için çerez. Bunun işe yaradığını gözlemliyorum zaman zaman ama neden hiçbir fikrim yok. Benim sunucu üzerinde diğer arama yapmak için aynı oturum tanımlama kullanıyorum ve bu hiç kimlik doğrulama başarısız. Ben sadece bir web görünümü bir URL yüklemeye çalışırken bu sorunu gözlemlemek ve her zaman olmaz. Çok sinir bozucu.

Aşağıda bunu yapmak için kullanıyorum bu kodu. Herhangi bir yardım büyük takdir edilecektir.

String myUrl = ""http://mydomain.com/"; 
CookieSyncManager.createInstance(this); 
CookieManager cookieManager = CookieManager.getInstance(); 
Cookie sessionCookie =  getCookie(); 
if(sessionCookie != null){ 
    String cookieString = sessionCookie.getName()  "=" sessionCookie.getValue() "; domain=" sessionCookie.getDomain(); 
    cookieManager.setCookie(myUrl, cookieString); 
    CookieSyncManager.getInstance().sync(); 
} 

WebView webView = (WebView) findViewById(R.id.webview); 
webView.getSettings().setBuiltInZoomControls(true); 
webView.getSettings().setJavaScriptEnabled(true); 
webView.setWebViewClient(new MyWebViewClient()); 
webView.loadUrl(myUrl);

CEVAP
27 ŞUBAT 2010, CUMARTESİ


Teşekkürlerjustingrammens! Bu benim için, DefaultHttpClient isteklerim ve web görünümü etkinlik içinde cookie paylaşmak başardım çalıştı

//------- Native request activity
private DefaultHttpClient httpClient;
public static Cookie cookie = null;

//After Login
List<Cookie> cookies = httpClient.getCookieStore().getCookies();
for (int i = 0; i < cookies.size(); i  ) {
    cookie = cookies.get(i);
}

//------- Web Browser activity
Cookie sessionCookie = myapp.cookie;
CookieSyncManager.createInstance(this);
CookieManager cookieManager = CookieManager.getInstance();
if (sessionCookie != null) {
    cookieManager.removeSessionCookie();
    String cookieString = sessionCookie.getName()   "="   sessionCookie.getValue()   "; domain="   sessionCookie.getDomain();
    cookieManager.setCookie(myapp.domain, cookieString);
    CookieSyncManager.getInstance().sync();
}   

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Blue Lightning TV

    Blue Lightni

    9 EKİM 2011
  • Joshua Kywn

    Joshua Kywn

    17 Mayıs 2010
  • SelmerSaxMan

    SelmerSaxMan

    24 HAZİRAN 2006