QQ、微信分享总结

QQ分享

腾讯开放平台注册成为开发者

下载QQ分享的SDK ——> 将SDK导入项目 ——>添加SDK依赖的系统库  在Build Phasses ——> Link Binary With Libraries中点击 +就能添加系统库("Security.framework", “libiconv.tbd”,“SystemConfiguration.framework”,“CoreGraphics.Framework”、“libsqlite3.tbd”、“CoreTelephony.framework”、“libstdc++.tbd”、“libz.tbd” ) ——>之后选择Copy Bundle Resources一栏点击+图标添选择Add Other... 进入SDK 文件所在的目录,选择TencentOpenApi_IOS_Bundle.bundle ,点击回车或者直接点击Open。

//修改配置

在工程项目中的Build Settings一栏中找到Linking配置区,在“Other Linker Flags”配置项添加属性值“-fobjc-arc”。

//修改工程配置文件

在XCode中,选择你的工程设置项,选中“TARGETS”一栏,在“info”标签栏的“URL type”添加一条新的“URL scheme”,新的scheme = tencent + appid。


创建iOS应用——>得到APP ID ——>打开工程项目在AppDelegate.m文件中导入

#import <TencentOpenAPI/TencentOAuth.h>
#import <TencentOpenAPI/QQApiInterface.h>

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

             _tencentOAuth = [[TencentOAuth alloc] initWithAppId:QQAPP_ID andDelegate:self];

}

//重写AppDelegate的handleOpenURL和openURL方法

openURL:

-(BOOL)application:(UIApplication *)application openURL:(NSURL *)urlsourceApplication:(NSString *)sourceApplication annotation:(id)annotation{

return[TencentOAuth HandleOpenURL:url];

}

handleOpenURL:

-(BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url{

return[TencentOAuth HandleOpenURL:url];

}

然后其他的方法我就不一一列举了。关键的就是这些,其他的关于怎么分享什么的其实就有很多朋友写了放在网上的,大家不会的可以直接百度呀,哈哈哈。

接下来就是微信分享咯

微信分享首先也是要到微信开放平台去下载微信的SDK——>接下来就是把微信的SDK导入项目工程 ——>添加SDK依赖的系统库——>怎么添加我就不重复了,具体需要的几个是“SystemConfiguration.framework”, “libz.tbd”, “libsqlite3.0.tbd”, “CoreTelephony.framework”。接下来就要开始工作了。

在AppDelegate中导入import "WXApi.h"

- ( BOOL )application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
  [WXApi registerApp:@ "wx1234567890" ]; //此为申请下来的key一般以wx开头
  return YES;
}

然后就可以做你的分享咯。

呀!差点忘记刚才遇到的一个问题,百度了一下,也把它记录下来,错误如下:

2017-10-25 09:52:13.897 DynamicSecret[1389:89930] -[__NSArrayM enqueue:]: unrecognized selector sent to instance 0x608000243330
2017-10-25 09:52:13.897 DynamicSecret[1389:89930] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSArrayM enqueue:]: unrecognized selector sent to instance 0x608000243330'
*** First throw call stack:
(
0   CoreFoundation                      0x000000010dc1734b __exceptionPreprocess + 171
1   libobjc.A.dylib                     0x000000010d31021e objc_exception_throw + 48
2   CoreFoundation                      0x000000010dc86f34 -[NSObject(NSObject) doesNotRecognizeSelector:] + 132
3   CoreFoundation                      0x000000010db9cc15 ___forwarding___ + 1013
4   CoreFoundation                      0x000000010db9c798 _CF_forwarding_prep_0 + 120
5   DynamicSecret                       0x000000010a8ea3c4 -[WXOMTASocket send:callback:] + 129
6   DynamicSecret                       0x000000010a8ea5bd -[WXOMTASocket sendEvent:callback:] + 295
7   DynamicSecret                       0x000000010a8cbb12 __reportOneEvent_block_invoke_3 + 252
8   DynamicSecret                       0x000000010a8cb792 __reportOneEvent_block_invoke + 1407
9   libdispatch.dylib                   0x000000010e803980 _dispatch_call_block_and_release + 12
10  libdispatch.dylib                   0x000000010e82d0cd _dispatch_client_callout + 8
11  libdispatch.dylib                   0x000000010e80ae6b _dispatch_queue_serial_drain + 236
12  libdispatch.dylib                   0x000000010e80bb9f _dispatch_queue_invoke + 1073
13  libdispatch.dylib                   0x000000010e80c07f _dispatch_queue_override_invoke + 683
14  libdispatch.dylib                   0x000000010e80e3b7 _dispatch_root_queue_drain + 720
15  libdispatch.dylib                   0x000000010e80e08b _dispatch_worker_thread3 + 123
16  libsystem_pthread.dylib             0x000000010ebdc746 _pthread_wqthread + 1299
17  libsystem_pthread.dylib             0x000000010ebdc221 start_wqthread + 13
)

libc++abi.dylib: terminating with uncaught exception of type NSException


解决方法呢就是在你的工程文件中选择Build Setting,在"Other Linker Flags"中加入"-Objc -all_load"这样就大功告成了


注:本文为原创,转载请注明

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
H5 分享微信QQ 功能是指在 H5 网页中实现分享内容到微信QQ 的功能。当用户在浏览 H5 网页时,点击分享按钮,可以将当前网页的链接或自定义的内容分享微信QQ 平台。 H5 分享微信QQ 功能的实现可以通过调用相关的 JavaScript API 来完成。首先,我们需要获取用户的微信QQ 客户端是否安装,可以通过浏览器的 User-Agent 来进行判断。如果用户已安装了微信QQ 客户端,我们可以进行下一步的分享操作。然后,我们使用相应的 API,调用微信QQ分享接口,将需要分享的内容进行设置,例如标题、描述、图标或图片等。最后,调用分享接口,将内容分享微信QQ 平台。 在实现 H5 分享微信QQ 功能时,需要注意以下几点。首先,分享的内容需要经过用户的授权,需要遵循用户的隐私保护原则。其次,分享的内容应具有吸引力,例如精美的图片、有趣的描述等,以吸引更多用户进行分享。另外,为了提升用户体验,我们可以在分享完成后给予用户适当的反馈,例如弹出一个提示框表示分享成功。 总结来说,H5 分享微信QQ 功能是一种在 H5 网页中实现将内容分享微信QQ 的功能。通过调用相应的 API,我们可以判断用户是否安装了微信QQ 客户端,并将需要分享的内容设置好后,调用相关的分享接口进行分享操作。实现这一功能需要注意保护用户隐私,设计有吸引力的分享内容,并提供分享成功的反馈。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值