先日 Go MemoというiOSアプリをリリースしました。 「あとで行く」ためのアプリ、Go Memoをリリースしました Go Memoは週末4日間くらいで作ってリリースしたアプリなのですが、こうしてスピードを出せたのは便利なライブラリのおかげです。 この記事ではGo Memoで使ったライブラリを紹介しようと思います。 便利なiOSライブラリ AFNetworking 言わずとしれた定番ライブラリ。作者の mattt さんも非常に有名です。サーバーとのHTTP通信はほとんどこれに頼っていて、NSURLSession とか自分で書いてないです。 Go Memoでは foursquare API をたたく所で利用しています。 NSDictionary *params = ...; AFHTTPRequestOperationManager *manager = [AFHTTPRequestOp
CoreDataとUIManagedDocumentとiCloudと(1) CoreDataとUIManagedDocumentとiCloudと(2) CoreDataとUIManagedDocumentとiCloudと(3) CoreDataとUIManagedDocumentとiCloudと(4) iCloudで話を引っ張って5回目になりましたが、ようやく今回で話の前哨戦が終了です。今回の話も前回と同じサンプルコード https://github.com/gentlesoft/iOS-Samples/tree/master/CoreDataSample を使用します。 本ネタの本命であるUIManagedDocumentは次回からのネタになります。まだサンプルを作っていないので、次回の話を作る前に早急にサンプルを作らなければなりません。どうもなかなか時間が取れなくて、正直このペースはき
Core Data に格納されたデータの中から特定の属性値が最大値を取得したい。 SQL だと SELECT MAX(timeStamp) FROM Book;と、たった一行で簡単に取得できるが Core Data ではどうか? 前提 こんなエンティティがあったとする。 この属性値 timeStamp の最大値(すなわち最も最近の日時)を取得するメソッドを用意する。またこのメソッドは絞り込みの条件として Author(NSManagedObjectのサブクラス)を渡すことができる。 コード見本 こんな感じ。 - (Book*)lastTimeStampOfAuthor:(Author*)author { NSManagedObjectContext* moc = self.managedObjectContext; NSFetchRequest* request = [[NSFetchRe
こんにちは。Objective-C は Emacs で書く金内です。 ウェブブラウザ Sleipnir for Mac や Sleipnir Mobile for iPhone / iPad は、ブックマークや履歴・タブのデータを Core Data を使って管理しています。 Core Data は iOS / OS X 開発の主要フレームワークのひとつですが、どうにもとっつきにくいためか、尻込みしてしまう方も多いという印象があります。 この記事の目的は、とっつきにくい Core Data を最低限の内容にしぼって解説して、「なるほどそーいうものなのね。ボク/ワタシのアプリでも使ってみよっかなー」と思っていただくことです。 どんな時に使うの? ひとことで言えば、Core Data は Apple 純正の高機能・高性能データ管理フレームワークです。 iOS / Mac 向けのアプリである程度
ものすごく便利な機能がたくさんあってもなかなか使いこなすのは大変なCore Data。基本の登場人物をまとめてみた。全体像が見えているとリファレンスガイドも楽に読めるようになるし、何より、「やりたいこと」があったとき、何を調べればよいかの見当がつくようになる。 ということで、まずは根っこからCore Dataの「仕組み」を把握しよう。 ここで紹介する主な登場人物は以下。 NSPersistentStoreCoordinator NSManagedObjectContext NSManagedObjectModel NSManagedObject NSEntityDescription NSFetchRequest ここまではMac OS, iOS共通。iOSでは上記以外にNSFetchedResultsControllerという素晴らしきコントローラがあるが、これはあくまでも取得したデータ
HOME » Natsu note » 古い投稿 » Core Data 勉強日記 (8):More iPhone 3 Development / chapter 5 (データモデルのバージョン管理) Core Data 勉強日記 (8):More iPhone 3 Development / chapter 5 (データモデルのバージョン管理) 2010/02/20/|古い投稿|Core Data More iPhone 3 Development: Tackling iPhone SDK 3 (Beginning) Chapter 5 のまとめ。 まずはじめに、Core Dataを利用して保存したデータは、データモデルに変更があると、そのままでは使えなくなる。データモデルを変更したにも関わらず、旧構成のデータが保存されている状態では、アプリは起動すらできない。 かといって、初回リリース
iOS/iPhone/iPad/MacOSX プログラミング, Objective-C, Cocoaなど FATAL ERRORNSFetchedResultsController を使っているアプリで下記のエラーが出た。 2010-06-25 12:29:11.679 HairConcierge[29825:207] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'FATAL ERROR: The persistent cache of section information does not match the current configuration. You have illegally mutated the NSFetchedResultsCo
Copyright (C) iPhoneアプリ開発備忘録 All rights reserved. ブログ内で記したコード、内容の正確性は保証いたしません。 記載内容を実装したことにより発生した不具合・損害等の責任は一切負いません。 Core Dataでデータを検索する方法はいくつかあるが、そのひとつを紹介。 // CoreData リクエスト命令組み立て NSFetchRequest *request = [[NSFetchRequest alloc] init]; NSEntityDescription *entity = [NSEntityDescription entityForName: @"Hoge" inManagedObjectContext: managedObjectContext]; [request setEntity: entity]; NSString *pre
大変な事に、この『Study CoreData』もすでに4エントリ目になりました。 しかも、まだ独自のデーターベース作成に一歩も入っていない始末…。 ですが、まず理解する事でこれからの作業が分かりやすくなる(はず?)です!! ってことで、引き続きデフォルトで作成されたプロジェクトを検証していきます。 前回までのエントリでコードとして書かれている核の部分はある程度理解できたと思うことにして^^; 今回は、 どのように<NSManagedObjectModel>(データの設計図)が作られるのか を見ていくことにします。 それでは、今まで見てきた『TodoCoreプロジェクト』を開きましょう。 注意:投稿者自身もCoraDataについて勉強中のため、このシリーズには誤りが含まれている可能性があります。もし、間違いに気付かれた方はコメント欄もしくはtwitterなどでご指摘いただけると幸いです<(
CoreData で、用意したデフォルトデータを初回起動時に読み込ませたかったので、その方法をまとめてみました。 環境:Xcode 4.2.1, iPhone 5.0 Simulator デフォルトデータの作成 デフォルトデータを作成するために、「Master-Detail Application」で新規プロジェクトを作成します(「Use Core Data」にチェックが入っていることを確認します)。 このサンプルプログラムは、右上のプラスボタンを押すたびに、現在の日時を格納します。ここでは、iOS Simulator で実行して、プラスボタンを連打してデフォルトデータを作成します。 デフォルトデータの所在 作成したデータは、以下のアドレスにあります。 /Users/ユーザ名/Library/Application Support/iPhone Simulator/バージョン名/Appli
CocoaでiPhoneアプリやMacアプリ開発をしている方なら一度は耳にする単語であるCoreData。これは主にSQLiteをラップし、データとビューのつなぎ合わせを簡潔にすることを目的としたフレームワークライブラリです。(MVCでいうところのModelに当たる)。加えて、Xcodeにおいて標準でCoreDataのエンティティ(テーブル)の作成やリレーションシップの作成をGUI上で行えるようになっているため、一見すると使いやすい印象を受けます。 ところが、現実的にこのライブラリをiPhoneアプリ開発で利用する方はあまり多くないようです。何故利用されないのかといえば、CoreDataにRDBと同じ機能を求めて利用しようとする方が多いからだと考えられます。CoreDataは前述のとおり、MVCでいうところのModelに当たる機能を担うため、ビューやコントローラとも密接に関係するように作ら
Core Dataを使ってると 「The model used to open the store is incompatible with the one used to create the store」 というエラーに出くわす。 その時の対処法をメモ。 前回ビルドしたときに作られたsqliteファイルが残っていると、データモデルの形式が違うというエラーが出てしまうというエラーらしいので、sqliteを削除すればOK. 保存されている場所は 「/Users/[ユーザー名]/Library/Application Support/iPhone Simulator/4.0.2/Applications/C8C5D84A-1E8C-45F1-97DA-xxxxxx/Documents/プロジェクト名.sqlite」 Applicationsの配下に、英字の羅列がたくさんあるディレクトリがたく
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く