我在網(wǎng)上發(fā)現(xiàn)很多QQ群驗(yàn)證的例子霉猛,但是大多都是千篇一律,登錄群空間后取網(wǎng)頁(yè)源碼判斷有沒(méi)有這個(gè)群這種思路珠闰,我只能說(shuō)惜浅,這種太low了。
現(xiàn)在我來(lái)給大家一個(gè)簡(jiǎn)單實(shí)用的方法伏嗜。
首先登錄群空間之后坛悉,進(jìn)入到自己需要驗(yàn)證的群空間去,右上角有幾個(gè)圖標(biāo)承绸,代表了群相冊(cè)裸影,群文件,群論壇军熏,群成員轩猩。我們需要用到的就是群論壇功能,點(diǎn)擊群論壇荡澎,會(huì)進(jìn)入一個(gè)新的html界面均践,這個(gè)群論壇只有本群成員能進(jìn)去,進(jìn)去后的地址是http://qgc.xxx.xxx/xxxx
但是如果是非本群成員點(diǎn)擊進(jìn)入摩幔,則會(huì)提示 不是本群成員彤委,地址是http://bbs.xxx.xxx/xxxx
所以要判斷是否是本群成員,只需要試試進(jìn)入群論壇或衡,看是qgc還是bbs即可焦影。
文末附上一段事例代碼
/*
**使用WebView來(lái)進(jìn)行驗(yàn)證
**布局自己想辦法
*/
public void 驗(yàn)證(WebView webview,int 群號(hào)){
final int groupID = 群號(hào);
//啟用js
webview.getSettings().setJavaScriptEnabled(true);
//自定義WebViewClient事件
webview.setWebViewClient(new WebViewClient(){
@Override
public void onPageStarted(WebView view, String url, Bitmap ico){
//頁(yè)面加載開(kāi)始
if(url.equals("http://qun.qzone.qq.com/group")){
//說(shuō)明登錄成功
//隱藏WebView
//view.setVisibility(View.GONE);
}
}
@Override
public void onPageFinished(WebView view, String url){
//頁(yè)面加載完畢
//獲取地址的第8,9,10位字符串
String tag = url.substring(7,10);
if(tag.equals("qun")){
//如果是qun已經(jīng)進(jìn)入了群空間
//開(kāi)始進(jìn)入群論壇
view.loadUrl("http://bbs.qun.qq.com/forumdisplay?gId=" + groupID);
}else if(tag.equals("qgc")){
//如果是qgc就驗(yàn)證成功
//群論壇地址后面有一串?dāng)?shù)字,是群論壇的唯一id封断,只有群成員能夠拿到斯辰,可用于加解密的密匙
String bbsid = url.substring(url.lastIndexOf("/") + 1, url.length());
Log.d("驗(yàn)證結(jié)果","成功,BBSID="+bbsid);
}else if(tag.equals("bbs")){
//如果還是bbs,那就失敗了
Log.d("驗(yàn)證結(jié)果","失敗");
}
//其他地址不做處理澄港,另外如果是注冊(cè)帳號(hào)或找回密碼椒涯,意見(jiàn)反饋柄沮,下載qq的地址
//需要使用外部瀏覽器打開(kāi)以免干擾驗(yàn)證
}
});
//載入QQ登錄界面
webview.loadUrl("http://ui.ptlogin2.qq.com/cgi-bin/login?appid=549000912&daid=5&style=12&s_url=http://qun.qzone.qq.com/group");
}