iOS学习之七牛云存储应用

简介:

前言

七牛云存储,是专为移动时代开发者打造的数据管理平台,为互联网网站和移动App提供数据的在线托管、传输加速以及图片、音视频等富媒体的云处理服务。

七牛云官网http://www.qiniu.com/,进入开发者平台,浏览了所有的开发指南,可是却是没有具体清晰的操作步骤。今天自己试着通过网络,实现了使用七牛云存储文件。现在,将操作步骤记录如下。

准备工作

1.注册七牛云账号。

2.创建空间。

3.获取Access Key。

4.获取Secret Key。

5.获取官方SDK(https://github.com/qiniu/objc-sdk)。

导入工程

1.打开Xcode创建Project。

2.从获取的官方SDK导入库,如下图

3.获取token

这一步,网上大家都说得很简单,在这一步卡壳许久。现在说说自己使用的方法:

1)获取服务器代码,编译工程,以备生成token。

服务器代码地址:https://github.com/CharsDavy/QiNiuGenertorToken

2)使用Eclipse导入上述服务器代码

在Test.java文件中,修改自己的空间名称,Access Key和Secret Key。运行程序,即可获得token。

这种方式生成的token的有效期是可以自己设定的,如果你想,设定1000年过期也是可以的。

4.使用代码上传文件


#import <QiniuSDK.h>
...
    NSString token = @"从服务端SDK获取";
    QNUploadManager *upManager = [[QNUploadManager alloc] init];
    NSData *data = [@"Hello, World!" dataUsingEncoding : NSUTF8StringEncoding];
    [upManager putData:data key:@"hello" token:token
        complete: ^(QNResponseInfo *info, NSString *key, NSDictionary *resp) {
        NSLog(@"%@", info);
        NSLog(@"%@", resp);
    } option:nil];
...

调试

工程导入之后,可能会出现以下几种可能的错误。

1.若报 Undefined symbols for architecture x86_64: "_crc32", referenced from: ,项目中需导入 libz.dylib。(Build Phases ---Link Binary With Libraries)

2.若报"_res_9_ninit", referenced from: _setup_dns_server in QNResolver.o 等,

  1)项目中需导入 libresolv.dyliblibresolv.9.dylib。(Build Phases --- Link Binary With Libraries);
2)或 (Build Settings --- Linking --- Other Linker Flags) 添加 -lresolv 选项

3.若报 Thread 1: EXC_BAD_ACCESS(code=1,address=0x180f4beb8)类似错误,将 QN 打头的都设置 arc (Build Phases --- Compile Sources)

4.可能需要修改部分内容,如 #import <AFNetworking/AFNetworking.h> 改为 #import "AFNetworking.h"

小结

以上就是本人在工程中使用七牛云进行文件云存储的过程,本文中使用的仅仅是上传文件,更多其他操作功能请参照官方文档。

最后,附上一个使用七牛云存储的软件,源码地址:https://github.com/CharsDavy/MyNotes

 

其实,对于获取token来完成上载操作,也可以参考官方文档,地址在

http://developer.qiniu.com/docs/v6/api/reference/security/put-policy.html


目录
相关文章
|
2月前
|
iOS开发 开发者
苹果iOS App Store上架操作流程详解:从开发者账号到应用发布
很多开发者在开发完iOS APP、进行内测后,下一步就面临上架App Store,不过也有很多同学对APP上架App Store的流程不太了解,下面我们来说一下iOS APP上架App Store的具体流程,如有未涉及到的部分,大家可以及时咨询,共同探讨。
|
2月前
|
开发者 iOS开发
iOS应用上架详细图文教程(上)
App Store作为苹果官方的应用商店,审核严格周期长一直让用户头疼不已,很多app都“死”在了审核这一关,那我们就要放弃iOS用户了吗?当然不是!本期我们从iOS app上架流程开始梳理,详细了解下iOS app上架的那些事。
|
4天前
|
存储 编解码 JSON
利用SwiftUI构建高效iOS天气应用
【4月更文挑战第21天】 在本文中,我们将深入探讨如何运用SwiftUI框架打造一个响应迅速且用户友好的iOS天气应用程序。我们将重点放在利用SwiftUI的声明式语法简化界面开发,并通过结合Core Location和Networking APIs实现实时天气数据的获取与展示。文章将详细阐述整个开发过程,包括API集成、数据模型设计、用户界面布局以及动态适配不同屏幕尺寸的策略。
|
1月前
|
安全 数据安全/隐私保护 虚拟化
iOS应用加固方案解析:ipa加固安全技术全面评测
iOS应用加固方案解析:ipa加固安全技术全面评测
37 3
|
1月前
|
运维 监控 安全
应用研发平台EMAS常见问题之sophix ios flutter热更新如何解决
应用研发平台EMAS(Enterprise Mobile Application Service)是阿里云提供的一个全栈移动应用开发平台,集成了应用开发、测试、部署、监控和运营服务;本合集旨在总结EMAS产品在应用开发和运维过程中的常见问题及解决方案,助力开发者和企业高效解决技术难题,加速移动应用的上线和稳定运行。
77 0
|
1月前
|
Web App开发 前端开发 网络安全
前端分析工具之 Charles 录制 Android/IOS 手机的 https 应用
【2月更文挑战第21天】前端分析工具之 Charles 录制 Android/IOS 手机的 https 应用
58 1
前端分析工具之 Charles 录制 Android/IOS 手机的 https 应用
|
2月前
|
Linux Android开发 iOS开发
iOS 应用上架的步骤和工具简介
APP开发助手是一款能够辅助iOS APP上架到App Store的工具,它解决了iOS APP上架流程繁琐且耗时的问题,帮助跨平台APP开发者顺利将应用上架到苹果应用商店。最重要的是,即使没有配置Mac苹果机,也可以使用该工具完成一系列操作,包括iOS证书申请、创建iOS开发者证书和 iOS发布证书等各类证书。此外,在Windows、Linux或Mac系统中上传IPA到App Store也变得简单快捷,从而大大简化了iOS APP上架的流程。
|
2月前
|
移动开发 前端开发 安全
保护你的 iOS 应用,防止逆向破解
保护你的 iOS 应用,防止逆向破解
|
2月前
|
存储 安全 数据安全/隐私保护
iOS应用上架详细图文教程(下)
我们这边介绍一个简便的证书制作小方法。
|
2月前
|
安全 算法 数据安全/隐私保护
iOS 代码加固与保护方法详解 - 提升 iOS 应用安全性的关键步骤
iOS 代码加固与保护方法详解 - 提升 iOS 应用安全性的关键步骤

相关实验场景

更多