ios应用间通信和分享数据的机制
2015-08-07 17:42
309 查看
m
iOS平台无法直接通过文件系统来分享数据。
1, 使用UIDocumentInteractionController
受到UIDocumentInteractionController的UI设计限制,其只能支持最多6个第三方应用,IOS6上UIDocumentInteractionController被抛弃了,取而代之的是UIActivityViewController,它提供了更灵活的解决方案
2, 使用UIActivityViewController
上面提到了第一种方案在iOS6被抛弃了,取代方案就是UIActivityViewController,因此这和第一种方案非常类似。在UI方面通过分页面板解决了最多6个第三方应用的问题,另外你可以通过创建自己的UIActivity子类来提供客制化的服务
3, 使用KeychainGroup Access
自iOS3.0始我们在同一家族的App间分享Keychain数据,这里说的同一家族的App指的是具有相同Bundle
Seed ID的应用[苹果制定的应用ID是由两部分组成,<Bundle Seed ID>.<Bundle
Identifier>]。
4, 客制化的URLScheme
允许应用间通过URL进行数据传输。URL Scheme是iOS平台目前应用间通讯的常用解决方案。
5, Web Service
通过第三方服务(例如dropbox)或者自己定制的服务器来进行数据分享,[当然也可以在本地App内创建Web
Server,但是如果App切入后台之后,尤其是内存吃紧时,一切就变得不靠谱了]。
6, UIPasteBoard + URL Scheme
上面的方案或许足以满足你的应用需求,但这些方案或多或少存在某些明显短板,都为另一潜在的解决方案留有余地。如果你想精确的控制App间数据通讯并且不受离线的影响,可以选择UIPasteBoard+URL Scheme的方案。[遵循x-callback-url规范的应用iPGMail就使用了这种方案]
像上面提到过的URL Scheme方案一样,我们可以通过URL来进行应用间通讯,而对于数据的传输,可以使用剪贴板来进行,可以选择成熟的数据结构序列化反序列化方案来封装通讯及数据传输协议,可以定义回调方法
版权声明:本文为博主原创文章,未经博主允许不得转载。 http://blog.csdn.net/tenfyguo/article/details/9063675
iOS平台无法直接通过文件系统来分享数据。
1, 使用UIDocumentInteractionController
受到UIDocumentInteractionController的UI设计限制,其只能支持最多6个第三方应用,IOS6上UIDocumentInteractionController被抛弃了,取而代之的是UIActivityViewController,它提供了更灵活的解决方案
2, 使用UIActivityViewController
上面提到了第一种方案在iOS6被抛弃了,取代方案就是UIActivityViewController,因此这和第一种方案非常类似。在UI方面通过分页面板解决了最多6个第三方应用的问题,另外你可以通过创建自己的UIActivity子类来提供客制化的服务
3, 使用KeychainGroup Access
自iOS3.0始我们在同一家族的App间分享Keychain数据,这里说的同一家族的App指的是具有相同Bundle
Seed ID的应用[苹果制定的应用ID是由两部分组成,<Bundle Seed ID>.<Bundle
Identifier>]。
4, 客制化的URLScheme
允许应用间通过URL进行数据传输。URL Scheme是iOS平台目前应用间通讯的常用解决方案。
5, Web Service
通过第三方服务(例如dropbox)或者自己定制的服务器来进行数据分享,[当然也可以在本地App内创建Web
Server,但是如果App切入后台之后,尤其是内存吃紧时,一切就变得不靠谱了]。
6, UIPasteBoard + URL Scheme
上面的方案或许足以满足你的应用需求,但这些方案或多或少存在某些明显短板,都为另一潜在的解决方案留有余地。如果你想精确的控制App间数据通讯并且不受离线的影响,可以选择UIPasteBoard+URL Scheme的方案。[遵循x-callback-url规范的应用iPGMail就使用了这种方案]
像上面提到过的URL Scheme方案一样,我们可以通过URL来进行应用间通讯,而对于数据的传输,可以使用剪贴板来进行,可以选择成熟的数据结构序列化反序列化方案来封装通讯及数据传输协议,可以定义回调方法
版权声明:本文为博主原创文章,未经博主允许不得转载。 http://blog.csdn.net/tenfyguo/article/details/9063675
相关文章推荐
- 苹果开发 笔记(58)AFNetworking 类图
- C#语言开发iOS 应用程序
- IOS--CocoaPods的安装和使用
- IOS学习之委托和block
- IOS学习之一个示例弄懂代理(delegate)和协议
- 自定义iOS7导航栏背景,标题和返回按钮文字颜色
- ios开发之----扫描二维码、条形码
- iOS 支持多任务、断点下载(图片、音频、视频) (Demo 一)
- ios开发小记
- 8.7日星期五ios开发群
- iOS 定时器(发送短信验证)
- 隐藏iOS导航条底部与self.view的分界线的简单方法
- iOS开发 - mac下svn客户端的使用
- iOS7下获取内付费的receipt
- iOS开发之判断手机号
- iOS开发常见问题(不断更新)
- 霓歌即时通讯中的相关专利整理(六)
- ios controller嵌套
- iOS正则表达式验证等各种
- ios侧滑菜单使用经验