ニンテンドーDSi ウェア ‘プチコンmkII’ で、もう一つ取り組んでいるプログラムがあります。しかし、ちょっと一段落して iOS の iCloud について調べてみました。
最初に、新しくなった Xcode 4 の復習のため
Start Developing iOS Apps Today: Introduction https://developer.apple.com/library/ios/#referencelibrary/GettingStarted/RoadMapiOS/Introduction/Introduction.html Your Second iOS App: Storyboards: About Creating Your Second iOS App https://developer.apple.com/library/ios/#documentation/iPhone/Conceptual/SecondiOSAppTutorial/Introduction/Introduction.html Your Third iOS App: iCloud: About Your Third iOS App https://developer.apple.com/library/ios/#documentation/General/Conceptual/iCloud101/Introduction/Introduction.html
の3つの例題を試してみました。最終目的の iCloud プログラミングの理解に、3番目の Your Third iOS App が一番参考になります。iCloud は Simulator では動作しないので注意してください。
私自身、あくまでも趣味の範囲なので、iCloud の理解も UIDocument を基準にすることにしました。
iCloud に、どんなファイルが保存されているか調べるには OS X 上では
OS X (iCloud) ~/Library/Mobile Docunents
の上記フォルダで確認することができます。このフォルダの中身を変更すると問題が起こる確率が高いので、やめたほうがいいと思います。
また、iPhone、iPad、iPod touch 上の
設定.app iCloud > ストレージとバックアップ > ストレージを管理 > 書類およびデータ
から、アプリを選択すると iCloud 内のファイルが表示されます。
右上に ‘編集’ ボタンがあるので iCloud 内のファイルを削除する時は、こちらを使うと良いと思います。
後、OS X、iOS 開発書籍の著者として有名な木下誠さんの iOS 技術情報誌アプリ
HMDT BOOKS カテゴリ: ブック 販売業者: HMDT Co., Ltd. http://itunes.apple.com/jp/app/hmdt-books/id500860946?mt=8 HMDT http://hmdt.jp/
の
HMDT JOURNAL Vol.001 第1回 iCoud(1) iCoud とは \170 HMDT JOURNAL Vol.002 第2回 iCoud(2) NSUbiquitousKeyValueStore \170 HMDT JOURNAL Vol.003 第3回 iCoud(3) ファイルベースの同期 \170 HMDT JOURNAL Vol.004 第4回 iCoud(4) ドキュメントベースの同期 \170
も参考になると思います。貴重な情報源で、書籍のように邪魔にならないので、毎回購入しています。
まず最初に、Document-Based App を理解しないといけないので
Document-Based App Programming Guide for iOS: Creating a Custom Document Object http://developer.apple.com/library/ios/#documentation/DataManagement/Conceptual/DocumentBasedAppPGiOS/CreateCustomDocument/CreateCustomDocument.html#//apple_ref/doc/uid/TP40011149-CH8-SW1 ▼Creating a Custom Document Object Loading Document Data Supplying a Snapshot of Document Data Storing Document Data in a File Package
上の説明に出てくるソースから、Document-Based App を作りました。
また、ドキュメントデータをそれぞれ NSData、NSFileWrapper のどちらかで保存する方法も学びました。
NSURL の
+ URLWithString: + fileURLWithPath:
の違いに注意してください。
また、Document Type の宣言方法は、
Document-Based App Programming Guide for iOS: Document-Based Application Preflight http://developer.apple.com/library/ios/#documentation/DataManagement/Conceptual/DocumentBasedAppPGiOS/DocumentImplPreflight/DocumentImplPreflight.html#//apple_ref/doc/uid/TP40011149-CH3-SW2 ▼Document-Based Application Preflight ▼Creating and Configuring the Project Declare a Document Type
上記 URL のページが参考になります。
UTI の種類は
Uniform Type Identifiers Reference: Introduction to Uniform Type Identifiers Reference http://developer.apple.com/library/ios/#documentation/Miscellaneous/Reference/UTIRef/Introduction/Introduction.html#//apple_ref/doc/uid/TP40009258-SW1
を参照してください。
ここまで、Document-Based App の理解が進むと iCloud に取り掛かるのに充分だと思います。
iCloud について
Document-Based App Programming Guide for iOS: Designing a Document-Based Application http://developer.apple.com/library/ios/#documentation/DataManagement/Conceptual/DocumentBasedAppPGiOS/DocumentArchitectureiniOS/DocumentArchitectureiniOS.html#//apple_ref/doc/uid/TP40011149-CH2-SW7 ▼Designing a Document-Based Application ▼A Document in iOS A Document in iCloud Storage
を読んでから、もう一度
Your Third iOS App: iCloud: About Your Third iOS App https://developer.apple.com/library/ios/#documentation/General/Conceptual/iCloud101/Introduction/Introduction.html
のソースと
Document-Based App Programming Guide for iOS: Managing the Life Cycle of a Document http://developer.apple.com/library/ios/#documentation/DataManagement/Conceptual/DocumentBasedAppPGiOS/ManageDocumentLifeCycle/ManageDocumentLifeCycle.html#//apple_ref/doc/uid/TP40011149-CH4-SW1 ▼Managing the Life Cycle of a Document ▼Creating a New Document ▼Opening and Closing a Document
を参考に理解を深めると良いと思います。
Version Conflicts については
iiOS App Programming Guide: iCloud Storage https://developer.apple.com/library/ios/#documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/iCloud/iCloud.html#//apple_ref/doc/uid/TP40007072-CH5-SW1 ▼iCloud Storage ▼Using iCloud Document Storage Choosing a Strategy to Respond to Version Conflicts
が参考になります。
また、iCoud と Local 間の Documents の移動は
Document-Based App Programming Guide for iOS: Managing the Life Cycle of a Document http://developer.apple.com/library/ios/#documentation/DataManagement/Conceptual/DocumentBasedAppPGiOS/ManageDocumentLifeCycle/ManageDocumentLifeCycle.html#//apple_ref/doc/uid/TP40011149-CH4-SW1 ▼Managing the Life Cycle of a Document ▼Moving Documents to and from iCloud Storage
に説明されています。HMDT JOURNAL Vol.001 ~ Vol.004 も参考になります。
Your Third iOS App: iCloud: About Your Third iOS App https://developer.apple.com/library/ios/#documentation/General/Conceptual/iCloud101/Introduction/Introduction.html
のソースを読んでいると Blocks
Blocks Programming Topics: Introduction https://developer.apple.com/library/ios/#documentation/Cocoa/Conceptual/Blocks/Articles/00_Introduction.html A Short Practical Guide to Blocks https://developer.apple.com/library/ios/#featuredarticles/Short_Practical_Guide_Blocks/_index.html Building with Blocks in C and Objective-C https://developer.apple.com/library/mac/#featuredarticles/BuildingWithBlocks/_index.html
や GCD
Concurrency Programming Guide: Introduction https://developer.apple.com/library/ios/#documentation/General/Conceptual/ConcurrencyProgrammingGuide/Introduction/Introduction.html
の理解も必要になってくると思います。
手っ取り早く理解したい場合は
Introducing Blocks and Grand Central Dispatch https://developer.apple.com/library/mac/#featuredarticles/BlocksGCD/_index.html
が参考になります。
私自身、なかなか理解できない部分もあるので 、書籍
Creating iOS 5 Apps: Develop and Design
- 作者: Rich Warren
- 出版社/メーカー: Peachpit Press
- 発売日: 2011/12/13
- メディア: ペーパーバック
- クリック: 2回
- この商品を含むブログを見る
Creating iOS 5 Apps: Develop and Design [Kindle Edition] Rich Warren (Author) Kindle Price: $21.99
を Amazon で購入し、iPad の Kindle で読んでいる途中です。iOS 5 になって変わった基本的な Objective-C の機能についての説明もあるので、今まで iOS 開発を行ってきた人にもお勧めの本です。