一直在做商城项目都是混编APP,即native中嵌套web,如何实现在客户端登录后监听Web端登录。解决方案:
在客户端webview设置CooKie,加载webview时存进去,这样webview中就可以接收到数据,不仅仅做登录,也可以做其他的一些功能。代码如下:
在加载webview界面时直接调用就行:
synCookies(getActivity(), result, "key=354a00e73c7b6086f2541fcd50c119af"); mWebView.loadUrl(result);
/** * 设置Cookie * * @param context * @param url * @param cookie 格式:uid=21233 如需设置多个,需要多次调用 */ public void synCookies(Context context, String url, String cookie) { CookieSyncManager.createInstance(context); CookieManager cookieManager = CookieManager.getInstance(); cookieManager.setAcceptCookie(true); cookieManager.setCookie(url, cookie);//cookies是在HttpClient中获得的cookie CookieSyncManager.getInstance().sync(); } /** * 清除Cookie * * @param context */ public static void removeCookie(Context context) { CookieSyncManager.createInstance(context); CookieManager cookieManager = CookieManager.getInstance(); cookieManager.removeAllCookie(); CookieSyncManager.getInstance().sync(); }