腾讯微博开放平台的登录授权一直没有官方的sdk,下载的sdk开始正常使用无问题,但是某天,我们用htc g10 android2.3(有刷过机)使用腾讯微博账号登录,发现登录界面显示为pc上的授权页面,从而导致无法登录;开始我们认为是腾讯对浏览器做了判断,不同httpheader返回不同的页面,
经过反复测试得到三种显示方式:
// 不设webview user-agent
Dalvik/1.1.0 (Linux; U; Android 2.1-update1; sdk Build/ECLAIR)
// webSettings.setUserAgentString("Android");
Dalvik/1.1.0 (Linux; U; Android 2.1-update1; sdk Build/ECLAIR)
// webSettings.setUserAgentString("Desktop");
User-Agent: Desktop
于是我们在发送http请求的时候,将header的user-agent设置为android,在模拟器上测试,设置为pc的时候会显示pc登录页,设置android会显示wap登录页,但是程序打包放置到htc g10,发现此种设置无效,登录界面仍然为pc登录界面,这就比较为难了。
所幸,经过一段时间的搜索,发现登录登录界面还有一种调用方式,即是在url后边加上wap=2参数,这样即使是使用pc浏览器访问登录界面仍然会呈现wap界面,现发布出来做一下记录
http://open./cgi-bin/authorize?oauth_token=63e81ed0c5db40f39ea222e0530a838e&wap=2