100apps / openshare

不用官方SDK,利用社交软件移动客户端(微信/QQ/微博/人人/支付宝)分享/登录/支付。
http://www.gfzj.us/series/openshare/
GNU General Public License v3.0
3.64k stars 661 forks source link

分享到QQ空间偶发性失败 #34

Closed Navimark closed 8 years ago

Navimark commented 8 years ago

使用OpenShare分享到QQ空间时,有时候会失败,“重新发送”几次后才成功。而在同一网络下,使用其他的接入了QQ原生SDK的APP分享到QQ空间,总会成功。 下面是一些现场,希望能有帮助 1、分享到QQ空间 image 2、分享失败 image 3、分享失败时的包 image 4、点了几次“重新发送”后,发送成功了,add_share_pic: image

Duzj commented 8 years ago

对,我也遇到这个问题,我用demo中的url 每次都成功,换成自己的url 放在demo中也会出现这种情况,我感觉是不是最后拼接的地址有什么问题?

100apps commented 8 years ago

贴一下代码吧 ------------------ Original ------------------ From: "Duzj"notifications@github.com Date: Thu, Nov 5, 2015 09:15 AM To: "100apps/openshare"openshare@noreply.github.com; Subject: Re: [openshare] 分享到QQ空间偶发性失败 (#34)

对,我也遇到这个问题,我用demo中的url 每次都成功,换成自己的url 放在demo中也会出现这种情况,我感觉是不是最后拼接的地址有什么问题?

— Reply to this email directly or view it on GitHub.

Duzj commented 8 years ago

我直接用demo中的代码,只是最后一句换了个url,麻烦看下,特别是 qq空间 -(void)qqViewHandler:(UIButton)btn{ UISegmentedControl *seg=(UISegmentedControl)[panel viewWithTag:2002]; OSMessage *msg=[[OSMessage alloc] init]; msg.title=@"Hello OpenShare (msg.title)"; if (btn.tag>=2) { msg.image=testImage; msg.thumbnail=testThumbImage; msg.desc=@"这里写的是msg.description"; } if(btn.tag==3){ msg.link=@"http://sports.qq.com/a/20120510/000650.htm"; }else if(btn.tag==4){ msg.link=@"http://wfmusic.3g.qq.com/s?g_f=0&fr=&aid=mu_detail&id=2511915"; msg.multimediaType=OSMultimediaTypeAudio; }else if(btn.tag==5){ msg.link=@"http://v.youku.com/v_show/id_XOTU2MzA0NzY4.html"; msg.multimediaType=OSMultimediaTypeVideo; }

msg.link = @"http://app.systoon.com/?uuid=16ceb0b3-4bc8-43f8-a637-f89fd4a31865&fw=null";
Navimark commented 8 years ago

分享失败时的OSMessage对象(保密需要,涂黑了URL,请谅解) image PS:在使用原生SDK分享到QQ空间时,抓包并没有发现share/add_share_pic接口的调用

100apps commented 8 years ago

@iOSNerd @Duzj

QQ空间分享失败,我认为应该是是QQ空间自己的反垃圾算法导致的,和分享没关系。

我用官方SDKhttp://wiki.open.qq.com/wiki/mobile/SDK%E4%B8%8B%E8%BD%BD做了测试,同样会有分享失败的情况。

分享的url、标题、描述都有可能导致分享失败。