对 Swift 的文档支持还是太少,一开始按照他们的官方文档来的,结果出现好多问题,好几个小时都没有搞定简单的引入 SDK 这个事情,换其他的框架,用 CocoaPod 一下子就好了。也是无语。
这是其中一个问题,上传提交到应用市场的使用出现了有关 Provisioning Profile 的问题。
问题太多,来回折腾了四五个小时,对 Swift 的说明还是不太到位,动态库目前绝对是个大坑,慎入。
后来终于找到了方法,在一个论坛里有人回复的,原链接,截屏如下:
图中的第三步可以参考官方文档方法,其他多余的步骤一律不要,完全按照上面的4步来,第三步实际上就是下图的步骤:
注意在添加 linker flags 的时候,官方文档里没有说要添加 -all_load
,但是给出的图片里有,我不太确定到底要不要加入,最后还是加入了 -all_load
,也没有出现什么问题。如果不加,可能会出问题吗?这个我不太确定,你可以试一下。
下次要在自己的项目里使用 Swift 和 LeanCloud,按照上面的步骤来,很快,几分钟就搞定啦,不要像我这样,耽误了四五个小时,太可惜!
后来正确答案提供者回复我说,Swift 的 LeanCloud 就是个坑,最好还是用 Objective-C。可是!!!但是!!!我都花了这么时间了,才找到正确的方法,说什么也不想回去用 Objective-C 了,不然怎么对得起我花掉的那些时光呢。
看到这篇文章的人,也能少走一些弯路,少浪费一些时间,我浪费掉的那些时间,也就值得了。
剩下的步骤虽然和官网介绍一样,我在这里还是重复一下吧,刚刚我们上面的操作,是把框架引入到自己的项目中,开需要进行一些初始化:
AppDelegate.swift 文件里要做以下事情:
去新建一个App,然后在 控制台->应用设置 中找到 ApplicationId 和 clientKey。
1.开头引入 AVOSCloud
import AVOSCloud
2.在 didFinishLaunchingWithOptions
方法里执行操作:
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
AVOSCloud.setApplicationId("请复制你自己的", clientKey: "请自行复制")
}