問題タブ [uimanageddocument]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - CoreData スタック対 iCloud アプリの UIManagedDocument
iCloud をサポートする CoreData アプリに最適なアプローチを選択しようとしています。
すべての CoreData と iCloud のものを処理し、ManagedObjectContext をアプリに配信する SingleTon クラスを作成するのは良い戦略だと思います。
このクラスは、ユーザーが iCloud アカウントを変更した場合、または iCloud が無効になった場合を処理する必要があります。これを行うには、複数の NSPesistentStores を使用する必要があります。1 つは iCloud 用で、もう 1 つは iCloud が利用できない場合に使用し、必要に応じてそれらの間でデータを移行します。右?
私の主な質問は、UIManagedDocument クラスまたは従来の CoreData スタックを使用して、アプリの CoreData/iCloud 基本ロジックを処理するシングルトン クラスを作成することの長所と短所は何ですか?
WWDC 2012 のコード サンプルは、CoreData ノーマル スタックの代わりに UIManagedDocument でも動作しますか?
ios5 - UIManagedDocument を削除する正しい方法
アプリには、ユーザーがボタンをクリックするだけでアプリのすべてをリセットできる機能があります。この時点で、すべての Core Data リレーション (カスケード削除) やその他の複雑な問題を削除しようとする代わりに、このコードを使用して UIManagedDocument 全体を実際に削除することにしました。
これは、私が想定しているドキュメントを削除する必要がありますか? しかし、それは時々エラーをスローします。そして奇妙な部分は、次回ドキュメントを再作成しようとすると、「ファイルを作成できません。ファイルは既に存在します」というエラーが表示されることです。ドキュメントを作成するために使用するコードは次のとおりです:-
私の質問は次のとおりです:-UIManagedDocument全体を削除/削除し、次に成功したログインで新たに開始するための最良/正しい方法は何ですか?
前もって感謝します。
ios - CoreData persistantStore を NSFileManager に置き換えても安全ですか?
アプリケーションと完全に連携する CoreData データベースがあります。データベースには、ユーザーが保存したプリセットが保存されます。ユーザーが iTunes 経由のファイル共有を使用してデータベースをバックアップできるようにしたいと考えています。
基本的に私はしたい:
バックアップ: データベース -> ユーザーがデバイス間で転送できるファイル
復元: ファイル -> データベース
私が考えた最も簡単な方法は、persistentStore を単純にコピーして置き換えることでした。そのようです..
これは私がデータベースを作成する方法です:
}
これは、persistentStore を置き換える方法です。
}
私はそれを機能させていますが、それが安全で好ましい解決策であるかどうかはわかりません(コアデータの新機能)。入力はありますか?
objective-c - UIManagedDocumentのsaveToURLでコアデータが失敗する
Core Dataをセットアップしようとしていますが、実行saveToURL
してUIManagedDocument
いると作成に失敗します。これは私のコードです。
isUserLoggedIn
最初に呼び出されますが、作成されると、「作成に失敗しました」というログが表示されます。エラーがないため、わかりません。エラーメッセージを取得する方法はありますか?なぜそれが機能しないのか誰もが知っていますか?
objective-c - UIManagedDocument で作成されるコア データ
coreData の構造と、オブジェクトがディレクトリに保存される方法がわかりません。私が知っているのは、UIManagedDocument のインスタンスを作成し、その URL とファイルを保存する場所を作成することです。次に、「SaveToURL」を呼び出します。これを呼び出すと、正確には何が作成されますか? それはコアデータスタックですか?次に、宣言したエンティティに情報を保存すると、エンティティ内の情報のセットごとにスタック内に個別のファイルが作成されますか? 最後に、UIManagedDocument のコンテキストとは正確には何ですか。
これらは3つの主な質問です
- 「SaveToURL」を呼び出すと何が作成されますか?それはドキュメントですか、それともファイルですか?それともスタックですか?
- エンティティに情報を保存すると、このファイル/スタック内に別のファイルが作成されますか?
- UIManagedDocument コンテキストとは何ですか?
ios - UIManagedDocument から作成された Core Data データベースを NSFileManager で処理しても問題ありませんか?
Core Dataを使用するアプリを作成しています。アプリの目的のために、事前に設定されたデータベースをアプリ バンドルにバンドルする必要があります。
私は使用していますUIManagedDocument
このために、アプリでデータベースを作成し、後でデータをロードしました。persistentStore
次に、Mac で iOS Simulator フォルダーを検索し、ファイルをアプリ バンドルにドラッグ アンド ドロップしました。
NSDocumentDirectory
ユーザーは実行時にデータベースを編集できるため、コードの後半でそれをにコピーしました。これは次の方法で行いました。
すべてが完璧に機能しています!しかし、これが何らかのエラーを生成するかどうかはわかりません。私の質問は、NSFileManager を使用して UIManagedDocument から作成された Core Data データベースを処理してもよろしいですか?
また、 Apple はファイルをバンドルするためのレビュー プロセスで不平を言うのでしょうか?persistentStore
ios - アプリのアップデート後の大きなトラブル。CoreData 移行エラー
今朝、iPhone アプリで大きな問題が発生しました。店から取り除かなければなりませんでした。
問題は、xcdatamodel に小さな変更を加えたことです。CoreData 移行のようなものが存在することが判明するまでは、更新プロセスが自動的に適切な方法で交換を行っていると考えていました。
UIManagedDocument を使用して永続ストアに接続しています。
このファイルを新しいファイルと交換するにはどうすればよいですか? 開発中に、デバイスからアプリ全体をアンインストールしてから再度インストールすると、すべてが機能しました。このプロセスをアプリ ストアで更新してシミュレートするにはどうすればよいでしょうか?
アップデート
このように移行オプションを設定しようとしています
しかし、アプリはまだクラッシュしています
** キャッチされない例外 'NSInternalInconsistencyException' が原因でアプリを終了します。理由: 'この NSPersistentStoreCoordinator には永続ストアがありません。保存操作を実行できません。
ios - UIManagedDocument OpenWithCompletionHandler never returns
I am running into a weird problem. I am sure that I did something to a file somewhere else in my code and it didn't close properly or something, but now it is in a state where it reports as being closed, but when I call OpenWithCompletionHandler it never returns. See below:
Any ideas?
sqlite - UIManagedDocumentによって作成されたsqliteデータベースをプリロードし、iPhoneシミュレーターでOKを実行し、iPhoneデバイスでの作業を拒否します
私はこの問題に 1 週間取り組んできましたが、Google でスタック オーバーフローを検索し、約 40 件の投稿を読みましたが、まだ問題を解決できません。1. sqlite データベースを作成し、データをプリロードするためのテスト アプリを作成しました。2.myApp を作成し、プリロードされた DB をリソース フォルダーにコピーしました。3.DBを取得するために次のコードを書きました:
次に、シミュレーターで myApp を実行すると、myApp は DB データを正常に取得し、iPhone で実行すると myApp は DB データを取得できません。SDK のバージョンが重要かどうかはわかりませんが、シミュレーターは iphone 5.1 で、私の iPhone は 5.0 (ジェイルブレイク) です。また、アプリで 5.1 固有の機能を使用していません。
最初にDataBaseをドキュメントディレクトリにコピーして機能させる必要があると言う人もいます。私は解決策を試しましたが、シミュレーターでは問題なく動作しますが、iPhoneにはデータがありません。さらに、iTool を使用して iphone フォルダーを調べたところ、myDB フォルダーは既にドキュメント dir にあります。投稿では、ソリューションがここにあることを示唆しています: UIManagedDocument を使用して iOS 5 にコア データ データベースをプリロードする
他の人は、persistentStoreCoordinator を直接使用する必要があると言っています。しかし、暗黙のpersistentStoreCoordinator自体を作成するため、UIManagedDocumentは私の状況で機能すると思います。
myApp の何が問題なのかについて何か提案はありますか?
そして、iosがsqlite DBを2層のフォルダーでラップし、実際のsqlite db persisentStoreに名前を付ける理由を誰でも教えてくれますか?
iphone - managedObjectContextを最初のviewControllerに挿入しますか?
AppDelegateでCoreDataモデル()を設定していますが、(ストーリーボード)初期viewControllerへUIManagedDocument
の参照をどのように挿入するかについて興味がありました。NSManagedObjectContext
viewDidLoad
[を使用してviewControllersで直接アクセスし、を使用して他の[[UIApplication sharedApplication] delegate] sampleDatabase] managedObjectContext]
コントローラーに渡すことができますprepareForSegue
。
コントローラ内でappDelegates共有インスタンスを使用してアクセスしなくても、managedObjectContextをその初期viewControllerに渡す(または挿入する)ことができる初期セグエ(またはメカニズム)があるかどうか疑問に思っていましたか?