從Android的浏覽器中傳遞cookie數據到App中
蔣彪@南京
2013-4-19
1. 需求
客戶有一個需求, 在Android的浏覽器上登錄一個site, login之後,會在本地cookie中保存login信息。
客戶要求接下來在浏覽器上,點擊一個按鈕,能夠啟動app, 並且將cookie中的login信息傳遞給app, 讓app免於再次登陸的繁瑣。
2. 技術實現
Html上添加一個a標簽,如下
[html]
<a class="button-download" href="cookie://XXXX "><span>啟動app</span></a>
XXX是js在初期化的時候,附上去的cookie信息
App的AndroidManifest.xml中的MainActivity中加入如下的intent
[html]
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data android:scheme="cookie"/>
</intent-filter>
在MainActivity的OnCreate中加入如下方法,取得cookie://後面的cookie信息
[java]
Intent intent = getIntent();
String uri = intent.getDataString();
3. 技術風險
這招能管用的前提是cookie要被設置為 HttpOnlyNo, Secure No,否則js取不到cookie,再咋搞都沒用。
#以上#