最近、iOS と Android の WebView + Native のハイブリッドアプリを制作した時の気づき。
iOS は WebView と HttpClient で SESSION など共有されているようだ。対して、Android はそれぞれ別です。これが想定している本来の動きと思われる。iOS はコアな部分で共有されているようだ。
例として、WebView から Cookie で SESSION を渡されたケース
iOS の挙動
- WebView 経由で Google などにログインした場合、SESSION が WebView に保持される。
- ログイン後に HttpClient 経由で Google にログイン時での操作が可能
Android の挙動
- WebView 経由で Google などにログインした場合、SESSION が WebView に保持される。
- ログイン後に HttpClient 経由で Google にログイン時での操作は当然できない
- WebView の Cookie 情報を HttpClient に渡してあげる
- HttpClient 経由で操作可能になる
知れは当然、知らねばハマる。