iOS-友盟v6.3.0 微信登錄

1.將U-Share SDK添加到工程

11

2.添加項目配置 在Other Linker Flags加入-ObjC

22

3.加入依賴系統(tǒng)庫

33
加入以下系統(tǒng)庫:
libsqlite3.tbd
CoreGraphics.framework
微信
SystemConfiguration.framework
CoreTelephony.framework
libsqlite3.tbd
libc++.tbd
libz.tbd

4.第三方平臺配置 配置SSO白名單

<key>LSApplicationQueriesSchemes</key>
<array>
    <!-- 微信 URL Scheme 白名單-->
    <string>wechat</string>
    <string>weixin</string>
</array>

5.URL Scheme


11474533850_.pic_hd.jpeg

7.初始化U-Share及第三方平

app delegate.m
#import <UMSocialCore/UMSocialCore.h>
//打開調(diào)試日志
   [[UMSocialManager defaultManager] openLog:YES];

   //設置友盟appkey
   [[UMSocialManager defaultManager] setUmSocialAppkey:@"576b40ee67e58ed423000bc1"];
   //設置微信的appKey和appSecret
   [[UMSocialManager defaultManager] setPlaform:UMSocialPlatformType_WechatSession appKey:@"wx4b2322692fe85433" appSecret:@"427ac81412594ef7b7c6921d7d1dc070" redirectURL:@"http://mobile.umeng.com/social"];

6.設置系統(tǒng)回調(diào)

//   設置系統(tǒng)回調(diào) 支持所有iOS系統(tǒng)
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation{
    
     BOOL result = [[UMSocialManager defaultManager] handleOpenURL:url sourceApplication:sourceApplication annotation:annotation];

    if (!result) {
        // 其他如支付等SDK的回調(diào)

    }
    return result ||[WXApi handleOpenURL:url delegate:self];
}
// 這個一定要寫哦 當時做過ping++的支付是有這個方法的,而微信登錄時就忘記了補充 BOOL result = [[UMSocialManager defaultManager] handleOpenURL:url];捌年,導致微信授權點擊確認登錄時凡恍,沒有任何反應蔑担,也沒有錯誤日志产镐,好慘??
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url
{
    BOOL result = [[UMSocialManager defaultManager] handleOpenURL:url];
    if (!result) {
        // 其他如支付等SDK的回調(diào)
    }
    return result;
}

7.第三方微信平臺登錄

// 在需要進行獲取登錄信息的UIViewController中加入如下代碼
#import <UMSocialCore/UMSocialCore.h>
- (IBAction)weChatLogin:(UIButton *)sender {
    NSLog(@"微信登錄");
    
    [[UMSocialManager defaultManager] getUserInfoWithPlatform:UMSocialPlatformType_WechatSession currentViewController:nil completion:^(id result, NSError *error) {
        
        if (error) {
            NSLog(@"退出登錄 ********%@",error);
            
        } else {
            UMSocialUserInfoResponse *resp = result;
            
            // 授權信息
//            NSLog(@"Wechat uid: %@", resp.uid);
//            NSLog(@"Wechat openid: %@", resp.openid);
//            NSLog(@"Wechat accessToken: %@", resp.accessToken);
//            NSLog(@"Wechat refreshToken: %@", resp.refreshToken);
//            NSLog(@"Wechat expiration: %@", resp.expiration);
//            
//            // 用戶信息
//            NSLog(@"Wechat name: %@", resp.name);
//            NSLog(@"Wechat iconurl: %@", resp.iconurl);
//            NSLog(@"Wechat gender: %@", resp.gender);
//            
//            // 第三方平臺SDK源數(shù)據(jù)
            NSLog(@"--------------originalResponse: %@", resp.originalResponse);
            
            NSDictionary *dic = [NSDictionary dictionaryWithDictionary: resp.originalResponse];
            //OpenID登錄的接口
            [self openIDWith:resp.uid with:dic];
        }
    }];
}

8.下面是我們自己的要求猜敢,根據(jù)授權返回resp.uid的獲取用戶的手機號是否綁定微信脑漫,(手機號直接獲取驗證碼登錄的)如果返回的isUser的值為false秸仙,就是沒有綁定满钟,要去綁定手機號

#pragma mark - OpenID登錄
- (void)openIDWith:(NSString *)unionid with:(NSDictionary *)dic{
    NSString *url = [NSString stringWithFormat:@"%@%@",URL_Base,URL_OpenIdDetail];
    
    NSDictionary *paramDic = @{@"unionId":unionid};
    [NetworkManager requestGETWithURLStr:url paramDic:paramDic Api_key:self.apikey finish:^(id responseObject) {
        NSLog(@"登錄成功返回%@",responseObject);
        
        
        NSString *isUser = [NSString stringWithFormat:@"%@",[responseObject objectForKey:@"isUser"]];
        
        if ([isUser isEqualToString:@"false"]) {// 沒有綁定 不存在
            
            OpenIdUpdateViewController  *openIdVC = [[OpenIdUpdateViewController alloc]init];
            
            openIdVC.dic = dic;
            [self.navigationController pushViewController:openIdVC animated:YES];
            
        }else{
         // 需要的操作 保存數(shù)據(jù)等
 
        }
 
    } enError:^(NSError *error) {
        NSLog(@"登錄失敗%@",error);
    }];
    
}

綁定手機號的ViewController

除了username和verifyCode胜榔,其他參數(shù)是微信授權返回值中獲取的

- (void)openIDUpdateWith:(NSString *)username with:(NSString *)verifyCode with:(NSString *)headImage with:(NSString *)nickname with:(NSString *)gender with:(NSString *)unionId{
    
    NSString *url = [NSString stringWithFormat:@"%@%@",URL_Base,URL_OpendIdUpdate];
    
    NSDictionary *dic = @{@"username":username,@"verifyCode":verifyCode,@"headImage":headImage,@"nickname":nickname,@"gender":gender,@"unionId":unionId};
    
    [NetworkManager requestPOSTWithURLStr:url paramDic:dic Api_key:self.apikey finish:^(id responseObject) {
        NSLog(@"成功返回apiKey---%@",responseObject);
        // 成功返回apiKey,再次微信登錄  返回的isUser的值為ture,不需綁定
        // 需要的操作
        
    } enError:^(NSError *error) {
        NSLog(@"失敗%@",error);
    }];    
}
最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末湃番,一起剝皮案震驚了整個濱河市夭织,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌牵辣,老刑警劉巖摔癣,帶你破解...
    沈念sama閱讀 222,627評論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異纬向,居然都是意外死亡择浊,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,180評論 3 399
  • 文/潘曉璐 我一進店門逾条,熙熙樓的掌柜王于貴愁眉苦臉地迎上來琢岩,“玉大人,你說我怎么就攤上這事师脂〉?祝” “怎么了江锨?”我有些...
    開封第一講書人閱讀 169,346評論 0 362
  • 文/不壞的土叔 我叫張陵,是天一觀的道長糕篇。 經(jīng)常有香客問我啄育,道長,這世上最難降的妖魔是什么拌消? 我笑而不...
    開封第一講書人閱讀 60,097評論 1 300
  • 正文 為了忘掉前任挑豌,我火速辦了婚禮,結果婚禮上墩崩,老公的妹妹穿的比我還像新娘氓英。我一直安慰自己,他們只是感情好鹦筹,可當我...
    茶點故事閱讀 69,100評論 6 398
  • 文/花漫 我一把揭開白布铝阐。 她就那樣靜靜地躺著,像睡著了一般铐拐。 火紅的嫁衣襯著肌膚如雪徘键。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,696評論 1 312
  • 那天余舶,我揣著相機與錄音啊鸭,去河邊找鬼锹淌。 笑死匿值,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的赂摆。 我是一名探鬼主播挟憔,決...
    沈念sama閱讀 41,165評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼烟号!你這毒婦竟也來了绊谭?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 40,108評論 0 277
  • 序言:老撾萬榮一對情侶失蹤汪拥,失蹤者是張志新(化名)和其女友劉穎达传,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體迫筑,經(jīng)...
    沈念sama閱讀 46,646評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡宪赶,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,709評論 3 342
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了脯燃。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片搂妻。...
    茶點故事閱讀 40,861評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖辕棚,靈堂內(nèi)的尸體忽然破棺而出欲主,到底是詐尸還是另有隱情邓厕,我是刑警寧澤,帶...
    沈念sama閱讀 36,527評論 5 351
  • 正文 年R本政府宣布扁瓢,位于F島的核電站详恼,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏引几。R本人自食惡果不足惜单雾,卻給世界環(huán)境...
    茶點故事閱讀 42,196評論 3 336
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望她紫。 院中可真熱鬧硅堆,春花似錦、人聲如沸贿讹。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,698評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽民褂。三九已至茄菊,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間赊堪,已是汗流浹背面殖。 一陣腳步聲響...
    開封第一講書人閱讀 33,804評論 1 274
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留哭廉,地道東北人脊僚。 一個月前我還...
    沈念sama閱讀 49,287評論 3 379
  • 正文 我出身青樓,卻偏偏與公主長得像遵绰,于是被迫代替她去往敵國和親辽幌。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,860評論 2 361

推薦閱讀更多精彩內(nèi)容