码迷,mamicode.com
首页 > 编程语言 > 详细

Swift集成第三方QQ分享错误总结

时间:2015-08-25 19:37:28      阅读:328      评论:0      收藏:0      [点我收藏+]

标签:ios   xcode   swift      

现在开发iOS程序,基本都用swift来编写代码。但是很多第三方库都是oc构建的,因此集成第三方SDK的时候,多多少少会遇到一些问题。下面是我集成QQ分享遇到的问题总结。
iOS_SDK的环境搭建这里介绍的还算详细。因为Xcode版本的升级。配置还是有一点不同。
1、在工程配置中的“Build Settings”一栏中找到“Linking”配置区,给“Other Linker Flags”配置项添加属性值“-fobjc-arc”。这是以前的Xcode版本。
技术分享

Xcode6是这样的。

技术分享

2、新建的swift工程中并没有Frameworks文件夹。所以我们新建一个文件夹Frameworks。

技术分享

3、在xxx(你的项目名)-Bridging-Header.h中添加以下头文件。路径一定要对,否则是没有效果的。我一开时就犯路径错误。这样swift才能轻松调用QQ的接口。

//TencentOpenapi
#import <TencentOpenAPI/TencentOAuth.h>
#import <TencentOpenAPI/QQApiInterface.h>
#import <TencentOpenAPI/QQApiInterfaceObject.h>
#import <TencentOpenAPI/sdkdef.h>
#import <TencentOpenAPI/TencentMessageObject.h>
#import <TencentOpenAPI/TencentOAuthObject.h>
#import <TencentOpenAPI/WeiBoAPI.h>
#import <TencentOpenAPI/WeiyunAPI.h>

4、重写AppDelegate.swift的两个方法,用swift写。

    func application(application: UIApplication, openURL url: NSURL, sourceApplication: String?, annotation: AnyObject?) -> Bool {
        return TencentOAuth.HandleOpenURL(url)
    }

    func application(application: UIApplication, handleOpenURL url: NSURL) -> Bool {
        return TencentOAuth.HandleOpenURL(url)
    }

5、测试分享代码。

let title = deal["title"] as! String
            let previewImageUrl = deal["image"] as! String
            var newObj = QQApiNewsObject(URL: NSURL(string:"http://www.baidu.com")!, title: title, description: title, previewImageURL: NSURL(string: previewImageUrl)!, targetContentType:QQApiURLTargetTypeNews)
            var req = SendMessageToQQReq(content: newObj)
            QQApiInterface.sendReq(req)

基本上第三方的调用方法都差不多。对于初学者来讲,还是有点作用的。

版权声明:本文为博主原创文章,未经博主允许不得转载。

Swift集成第三方QQ分享错误总结

标签:ios   xcode   swift      

原文地址:http://blog.csdn.net/u013598660/article/details/47981389

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!