Android實(shí)現(xiàn)微信登錄的示例代碼
微信登錄的實(shí)現(xiàn)與qq登錄類似。不過(guò)微信登錄比較麻煩,需要拿到開發(fā)者資質(zhì)認(rèn)證,花300塊錢,然后應(yīng)用的話還得有官網(wǎng)之類的,就是比較繁瑣的前期準(zhǔn)備工作,如果在公司里,這些應(yīng)該都不是事,會(huì)有相關(guān)人提前準(zhǔn)備好。在這里我們已經(jīng)拿到了開發(fā)者認(rèn)證,并且申請(qǐng)到了微信登錄的授權(quán)。
現(xiàn)在直接介紹mob來(lái)實(shí)現(xiàn)微信登錄的代碼,并獲取微信的相關(guān)數(shù)據(jù),比較簡(jiǎn)單。
一、布局界面
布局界面只需要一個(gè)button來(lái)觸發(fā)授權(quán)就可以
<Button android:id="@+id/wxlogin" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="微信登錄" />
二、MainActivity.java
public class MainActivity extends Activity { private Button wxlogin; private Platform wx; @Override protected void onCreate(Bundle savedInstanceState) { requestWindowFeature(Window.FEATURE_NO_TITLE); super.onCreate(savedInstanceState); setContentView(R.layout.activity_login); wxlogin = (Button) login_view.findViewById(R.id.wxlogin); wxlogin.setOnClickListener(new wxloginListener()); } private class wxloginListener implements OnClickListener { @Override public void onClick(View arg0) { wx = ShareSDK.getPlatform(Wechat.NAME); System.out.println("微信是否已經(jīng)授權(quán)1:"+wx.isAuthValid()); if(wx.isAuthValid()){ wx.removeAccount(true); } System.out.println("微信是否已經(jīng)授權(quán)2:"+wx.isAuthValid()); wx.SSOSetting(false); // 設(shè)置false表示使用SSO授權(quán)方式 wx.authorize(); wx.showUser(null); wx.setPlatformActionListener(new PlatformActionListener() { @Override public void onComplete(Platform platform, int i, HashMap<String, Object> hashMap) { System.out.println("wx登錄測(cè)試hashMap"+hashMap); System.out.println("wx登錄測(cè)試hashMap"+hashMap.toString()); String unionid = (String) hashMap.get("unionid"); System.out.println("wx登錄測(cè)試unionid"+unionid); System.out.println("wx登錄測(cè)試"+platform.getDb().toString()); String thirdLoginId = platform.getDb().getUserId(); System.out.println("wx登錄測(cè)試thirdLoginId:"+thirdLoginId); String userName = platform.getDb().getUserName(); System.out.println("wx登錄測(cè)試userName:"+ userName); String image = platform.getDb().getUserIcon(); System.out.println("wx登錄測(cè)試image:"+image); String sex = qq.getDb().getUserGender(); System.out.println("wx登錄測(cè)試sex:"+sex); System.out.println("wx登錄測(cè)試:"+"成功了"); } @Override public void onError(Platform platform, int i, Throwable throwable) { } @Override public void onCancel(Platform platform, int i) { } }); wx.removeAccount(true); System.out.println("微信是否已經(jīng)授權(quán)3:"+wx.isAuthValid()); } } }
這是官方提供的接口,
plat. authorize():要功能不要數(shù)據(jù) 單獨(dú)授權(quán)(只獲取授權(quán)信息,不獲取用戶信息)plat. showUser(null):要數(shù)據(jù)無(wú)需功能à授權(quán)并獲取信息(除了授權(quán)信息,其他用戶信息可以在oncomplete中的hashmap中獲?。?/p>
這樣就拿到的微信的授權(quán),并且獲得數(shù)據(jù),然后將數(shù)據(jù)向數(shù)據(jù)庫(kù)中存儲(chǔ),就可以做微信登錄了。
總體流程來(lái)說(shuō)還是比較簡(jiǎn)單,直接調(diào)用接口就行,就是前期的審核準(zhǔn)備工作比較麻煩。
到此這篇關(guān)于Android實(shí)現(xiàn)微信登錄的示例代碼的文章就介紹到這了,更多相關(guān)Android 微信登錄內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
???????Android?H5通用容器架構(gòu)設(shè)計(jì)詳解
這篇文章主要介紹了???????Android?H5通用容器架構(gòu)設(shè)計(jì)詳解,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-09-09android?ViewPager實(shí)現(xiàn)一個(gè)無(wú)限輪播圖
大家好,本篇文章主要講的是android?ViewPager實(shí)現(xiàn)一個(gè)無(wú)限輪播圖,感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話記得收藏一下2022-02-02簡(jiǎn)單學(xué)習(xí)Android Socket的使用方法
這篇文章主要幫助大家簡(jiǎn)單學(xué)習(xí)Android Socket的使用方法,感興趣的小伙伴們可以參考一下2016-03-03Android編程實(shí)現(xiàn)畫板功能的方法總結(jié)【附源碼下載】
這篇文章主要介紹了Android編程實(shí)現(xiàn)畫板功能的方法,結(jié)合實(shí)例形式總結(jié)分析了Android基于自定義View與Canvas類實(shí)現(xiàn)畫板功能的具體操作步驟與相關(guān)注意事項(xiàng),需要的朋友可以參考下2018-02-02快速解決Android適配底部返回鍵等虛擬鍵盤的問(wèn)題
今天小編就為大家分享一篇快速解決Android適配底部返回鍵等虛擬鍵盤的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-07-07Android Studio如何為Activity添加自定義注解信息
好久沒用寫文章了,今天給大家分享Android Studio如何為Activity添加自定義注解信息,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2021-06-06Android SwipeRefreshLayout超詳細(xì)講解
在android開發(fā)中,使用最多的數(shù)據(jù)刷新方式就是下拉刷新了,而完成此功能我們使用最多的就是第三方的開源庫(kù)PullToRefresh。現(xiàn)如今,google也忍不住推出了自己的下拉組件SwipeRefreshLayout,下面我們通過(guò)api文檔和源碼來(lái)分析學(xué)習(xí)如何使用SwipeRefreshLayout2022-11-11Android自定義WaveProgressView實(shí)現(xiàn)水波紋加載需求
這篇文章主要為大家詳細(xì)介紹了Android自定義WaveProgressView實(shí)現(xiàn)水波紋加載需求,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-09-09