【조사】WEB 어플리를 PWA로서 기동했을 경우에 브라우저의 localStorage가 계승되는지 확인한다

4078 단어 안드로이드iOSPWA

【추기】조사용 앱



조사에서 이용한 WEB어플리케이션은 앞으로도 iOS, Android버전업시에 이용할 가능성이 있을 것 같기 때문에 Heroku에서 공개해 둡니다. (무료 플랜으로 인해 잠시 액세스할 수 없는 경우 페이지가 표시되기까지 약간의 시간이 걸립니다.)

h tps : // p 와 ぉ 또는 ls 가라- st-아 p. 어리석은 p. 코m/


조사 내용



WEB어플리케이션을 PWA(프로그레시브웹어플리케이션)로서 기동했을 경우에 브라우저의 localStorage가 인계되는지 확인한다.

조사 대상


  • iOS 11.3
  • Android 8.0

  • 조사 배경



    참고 : 【조사】WEB 앱을 PWA로 기동했을 경우에 브라우저의 쿠키가 인계되는지 확인한다 - Qiita

    iOS(11.3)의 PWA에서는 브라우저와 쿠키가 공유되지 않는다 & 전회 기동시의 쿠키는 계승되지 않기 때문에, 지금까지의 WEB어플과 같이 쿠키(Session)에 로그인 정보를 보존해 둘 수 없다.

    PWA에서는 오프라인 스토리지의 이용이 상정되어 있기 때문에, 로그인(유저 인증)이 끝난 것을 나타내는 정보를 localStorage에 보존했을 경우, 어떻게 브라우저/PWA간에 계승되는지 확인했다.

    확인 방법



    set token 링크를 클릭하면 localStorage에 tokenランダムな英数字를 저장하는 앱을 만듭니다.

    사전에 브라우저에서 token을 설정해 두고 PWA로 시작한 경우,
    - value 값이 브라우저와 같으면 localStorage가 인계됩니다.
    - value 값이 비어 있으면 localStorage가 인수되지 않습니다.
    라고 판단한다.



    결과



    요약



    iOS 11.3은 브라우저와 PWA에서 localStorage를 공유하지 않습니다.
    PWA를 재시작해도 localStorage의 데이터는 유지된다.
    브라우저와 PWA에서 localStorage는 독립적입니다.

    Android 8.0은 브라우저와 PWA로 localStorage가 공유된다.

    세부사항: iOS 11.3


  • 브라우저의 localStorage는 PWA 기동시에 인계되지 않는다
  • PWA를 재부팅 (HomeScreen에서 다시 열어)하면 마지막 PWA 시작시 localStorage가 인계됩니다.
  • PWA에서 localStorage에 값을 설정해도 브라우저의 localStorage에는 반영되지 않습니다.

    세부사항: Android 8.0


  • 브라우저의 localStorage는 PWA 기동시에 계승된다
  • PWA를 재부팅 (HomeScreen에서 다시 열어)하면 마지막 PWA 시작시 localStorage가 인계됩니다.
  • PWA에서 localStorage에 값을 설정하면 브라우저의 localStorage에도 반영됩니다.

    스크린샷



    iOS 11.3









    Android 8.0









    보충



    조사용 앱 소스 코드(Ruby on Rails)



    게다가 Kishishimura / Kuta-P-Wa 또는 lS

    보충: localStorage에의 set/get/remove는 JavaScript만으로 조작할 수 있습니다만,
    쿠키 조사시의 소스 코드를 유용했기 때문에 Rails 앱이 되고 있습니다. . .
    HTML/JS 부분만 확인하고 싶은 경우는 여기 를 참고해 주십시오.
  • 좋은 웹페이지 즐겨찾기