저번 포스팅의 방식은 원래 작동 해야 하는게 맞다.
안드로이드 2.+ 버전에서 작동 한다고 한다.
허나, 안드로이드 4.+ 버전에선 같은 방식으로 처리해도 쿠키 사용이 되지 않는다.
폰갭이 안드로이드 버전에 맞춰서 따라가질 못하는 건지, 아니면 폰갭의 버그인지, 아니면 안드로이드 자체에 변화가 생긴건지는 자세하게 모르겠다만, 해외 블로그들을 읽을 때마다 모두 다 같은 소리를 한다.
쿠키 말고 localStorage를 써보란다.
http://community.phonegap.com/nitobi/topics/using_cookies_does_not_seem_to_work
http://stackoverflow.com/questions/3709315/phonegap-cookie-based-authentication-php-not-working-webview
http://stackoverflow.com/questions/16463188/cookie-based-authentication-on-phonegap
https://groups.google.com/forum/#!topic/phonegap/brNhSI7oTU4
https://groups.google.com/forum/#!topic/phonegap/wnSPTDRWglU
http://stackoverflow.com/questions/11392364/how-to-store-cookies-values-in-an-android-device-using-phonegap-and-jquery-mobil
쿠키랑 성격이 비슷한 녀석이다. 크로스 브라우징 걱정도 없고, 아주 쓸만한 녀석이다.
http://www.w3schools.com/html/html5_webstorage.asp
사용법 또한 아주 간단한게 마음에 쏙 든다.
위 링크에서 나와있는 사용 예제는 아래와 같다.
<script language="javascript"> localStorage.lastname="Smith"; document.getElementById("result").innerHTML="Last name: " + localStorage.lastname; </script>
폰갭 API 문서에도 설명이 나와 있다.
http://docs.phonegap.com/en/2.2.0/cordova_storage_storage.md.html#Storage
<script language="javascript"> //값 설정 window.localStorage.setItem("key", "value"); //가져오고 var value = window.localStorage.getItem("key"); //지워주고 window.localStorage.removeItem("key"); window.localStorage.clear(); </script>
데스크탑 환경에서( 폰갭 라이브러리 링크 안했는데 ) 문제 없이 돌아 간다.
그냥 모양새만 다른거고, HTML5 기본으로 제공하는 건가보다.
폰갭에서 따로 W3C Storage를 사용 가능하게 함수를 제공해 주는게 아니고 설명만 적어 놓은 거구나.
아주 쓸만한 녀석이지만, 클라이언트 쪽 데이터라 살짝 귀찮아 진다.
PHP 환경을 생각 해보자.쿠키나 세션이라면 $_COOKIE['...'] 등으로 서버단에서 처리해서 결과를 낼 수 있다만 이 경우라면 ajax등을 이용하여 필요한 처리를 해야한다.
http://stackoverflow.com/questions/3855337/php-localstorage
조만간에 머리가 크게 한번 지끈 거릴 것 같은 슬픈 예감이 든다.
댓글 없음 :
댓글 쓰기