調(diào)用微信登錄或者QQ發(fā)現(xiàn)可以成功調(diào)起,但是沒有回調(diào)信息尽狠。也就是第三方登錄的openid衔憨、頭像鏈接、昵稱之類的沒有返回袄膏。
解決辦法是在AppDelegate.m 中添加一下幾個方法就可以了
- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options
{
BOOL result = [[UMSocialManager defaultManager] handleOpenURL:url];
return YES;
}
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url
{
BOOL result = [[UMSocialManager defaultManager] handleOpenURL:url];
if (!result) {
// 其他如支付等SDK的回調(diào)
}
return result;
}
//支持所有iOS系統(tǒng)
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
//6.3的新的API調(diào)用践图,是為了兼容國外平臺(例如:新版facebookSDK,VK等)的調(diào)用[如果用6.2的api調(diào)用會沒有回調(diào)],對國內(nèi)平臺沒有影響
BOOL result = [[UMSocialManager defaultManager] handleOpenURL:url];
if (!result) {
// 其他如支付等SDK的回調(diào)
}
return result;
}
1.回調(diào)的時候在使用回調(diào)的時候,會調(diào)用最新的方法,廢棄的方法是不會進行回調(diào)的,這時候如果在最新的方法中,沒有加入該方法,就會出現(xiàn)第三方登錄后沒有回調(diào)信息的情況,而且不仔細剖析的話,是很難發(fā)現(xiàn)的
BOOL result = [[UMSocialManager defaultManager] handleOpenURL:url];
2.希望對開發(fā)中遇到這種情況的朋友有幫助