QQ分享

騰訊開放平臺管理中心 申請QQ分享時需要填寫的URL schema

當(dāng)在 iOS app 中集成qq的分享功能時,需要申請?zhí)顚懸韵聝?nèi)容:


0B37079C-E477-49A2-92F9-9FACEC74C635.png

這個URL schema是干什么用的呢?
答:設(shè)置這個URL schema是為了保證在分享完成或取消的時候自己的app 能被喚起。

那么其中URL schema的值這里又是需要填寫多少呢,是要怎么獲得呢?
答:其獲得方式,是通過將申請的qq app id 轉(zhuǎn)換為相應(yīng)的 URL Schema得來的。


URL schema的獲取方法.png

將app id轉(zhuǎn)換為 URL schema 的方法如下:


將app id轉(zhuǎn)換為 URL schema 的方法

最終這里要填寫的url schema 格式如下:

"QQ" + 騰訊QQ互聯(lián)應(yīng)用appId 轉(zhuǎn)換成十六進(jìn)制 (不足8位前面補0). 例如:QQ05FA957C
附:將十進(jìn)制的app id 轉(zhuǎn)換為十六進(jìn)制的方法:
方法①:在命令行中輸入以下命令:
echo 'ibase=10;obase=16;您的騰訊QQ互聯(lián)應(yīng)用Id'|bc
方法②:點擊進(jìn)入10進(jìn)制轉(zhuǎn)換16進(jìn)制

這樣我們就完成了申請內(nèi)容的填寫了。

那是不是就等于我們的app就已經(jīng)擁有了分享的功能了 呢?

答:還要在你的工程設(shè)置項,targets 一欄下,選中自己的 target,在 Info->URL Types 中添加 URL Schemes,
①設(shè)置Xcode的url scheme格式為之前在QQ互聯(lián)后臺填的的URL schema中“QQ”+騰訊QQ互聯(lián)應(yīng)用appId轉(zhuǎn)換成十六進(jìn)制(不足8位前面補0),例如“QQ05FC5B14”。
②并 額外設(shè)置 url schemes 的格式為"tencent"+騰訊QQ互聯(lián)應(yīng)用appId,例如“tencent5FC5B14”
如果 URL schemes 配置錯誤,則分享完成后無法返回應(yīng)用

解釋如下:
qq比較麻煩點,需要兩個 URL schemes
1、QQ+appID(注意:這里的appID填由原本的10進(jìn)制轉(zhuǎn)換過去的16進(jìn)制值)
2、tencent+appID(注意:這里的appID填原本的10進(jìn)制的,而不是16進(jìn)制,否則分享成功后,無法返回)

40A8E65E-8056-4DCE-BDD4-153FC250AE06.png

其他可參考內(nèi)容:騰訊開放平臺移動應(yīng)用IOS平臺里URL,schema填寫,還有這個Boundle,ID,,還有AppStore,ID

問題1:-canOpenURL: failed for URL: "mqq://" - error: "This app is not allowed to query for scheme mqq"
346AD822-4B73-494C-8BAD-DAA1BA717399.png

一、問題描述
真機調(diào)試時,使用MonkeyKing注冊微信、支付寶等時會報 canOpenURL: failed for URL: "weixin://" - error: "The operation couldn’t be completed. (OSStatus error -10814.)

二、解決辦法
在真機上下載注冊時對于的APP應(yīng)該,注冊微信,就下載微信應(yīng)用,注冊支付寶就下載支付應(yīng)用,就OK了。

iOS開發(fā)-canOpenURL: failed for URL: "mqq://" - error: "This app is not allowed to query for scheme mqq

【iOS開發(fā)】canOpenURL: failed for URL

常見問題

問題2001
Domain=UMSocialPlatformErrorDomain Code=2001 "(null)" UserInfo={message=Url is not value image url}
此問題在設(shè)置了Info.plist里NSAppTransportSecurity下的NSAllowsArbitraryLoads值為為YES后還是會出現(xiàn)。


解決方法:將圖片地址改為https的地址。如https://cdn.pixabay.com/photo/2015/07/09/20/06/stork-838424_1280.jpg

- (void)shareImageAndTextToPlatformType:(UMSocialPlatformType)platformType
{
    //創(chuàng)建分享消息對象
    UMSocialMessageObject *messageObject = [UMSocialMessageObject messageObject];
    
    //設(shè)置文本
    messageObject.text = @"社會化組件UShare將各大社交平臺接入您的應(yīng)用,快速武裝App。";
    
    //創(chuàng)建圖片內(nèi)容對象
    UMShareImageObject *shareObject = [[UMShareImageObject alloc] init];
    //如果有縮略圖,則設(shè)置縮略圖
    shareObject.thumbImage = [UIImage imageNamed:@"icon"];
    [shareObject setShareImage:@"https://cdn.pixabay.com/photo/2015/07/09/20/06/stork-838424_1280.jpg"];
    
    //分享消息對象設(shè)置分享內(nèi)容對象
    messageObject.shareObject = shareObject;
    
    //調(diào)用分享接口
    [[UMSocialManager defaultManager] shareToPlatform:platformType messageObject:messageObject currentViewController:self completion:^(id data, NSError *error) {
        if (error) {
            NSLog(@"************Share fail with error %@*********",error);
        }else{
            NSLog(@"response data is %@",data);
        }
    }];
}

分享失敗檢查的步驟:
①在該平臺開發(fā)者中心上,檢查該對應(yīng)平臺信息是否是否注冊
②在代碼中添加平臺支持
[[UMSocialManager defaultManager] setPlaform:UMSocialPlatformType_QQ appKey:KEY_QQ appSecret:nil redirectURL:@"http://mobile.umeng.com/social"];

附:U-Share常見問題(官網(wǎng))

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容