問題タブ [nspersistentstore]
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.
objective-c - コアデータを代替クラスで管理するには?
私が宣言したように、これは.hファイルです
これは.mファイルです
質問:
AppDelegateクラスではなくView Controllerでコアデータを宣言する方法は?
AppDelegate でこのコードを使用している間、なぜ機能するのでしょうか?
通常のクラスに配置した後、エラーが発生しています
like=[AppDelegate managedObjectContext]
ios - NSPersistentStoreCoordinator は、sqlite ファイルにアクセスしようとするとエラー NSSQLiteErrorDomain=26 を発生させます
最近、異なるドメイン モデル (永続化されたデータのサブセットを表す) への同時アクセスをいくつか追加しました。私のクラッシュレポートは、iOS7、iOS8、および iOS9 でいくつかのエラーに遭遇したことを示しています。これらはすべてに基づいているようです。
NSSQLiteErrorDomain = 26、NSUnderlyingException =パスのファイルは、ソースコードでマークした位置にあるSQLiteデータベースではないようです
残念ながら、それを再現することはできず、一部のデバイスには sqlite ファイルが存在しないとは想像もできません。アプリケーション バンドルに同梱されているからです。
- 私のコードに sqlite ファイルへのアクセスを妨げる欠陥がありますか?
- ファイルが見つからない以外に、このエラーが発生する可能性はありますか?
私のモデルシングルトンの初期化のための私のソースコードとNSManagedObjectContext
ios - NSPersistentStoreCoordinator には永続ストアがありません。保存操作ができません。(iOS 9)
私のアプリでは、CoreData を使用してデータを保存しています。また、サーバーからデータをプッシュおよびプルしています。また、同じアカウントで複数のデバイス間でデータを同期します。
しかし最近、crashLytics レポートからこのクラッシュが発生しています。
したがって、以下の関数では、この方法で「saveContext」メソッドを呼び出しています。
ManagedObject コンテキスト (MOC) の作成
だから私はほとんど疑問を持っていません。
1)毎回呼び出す必要が"[appDelegate saveContext]"
ありますか、データをサーバーから受信するか、アプリの終了時にのみ保存する必要があります。
2) CrashLytics レポートは を指してい"[appDelegate saveContext]"
ます。また、これはiOS 9から発生しています。
3) iOS 9 を実行しているデバイスでこの問題を再現できません。そのため、ユーザーが実際にこのクラッシュを見ているかどうか、またこのエラーの結果がどうなるかがわかりません。
ios - iCloud から永続ストアを移行できない
iCloud
アプリから同期機能を削除しようとしていNSPersistentStore
ます。移行によってエラーは返されませんが、iCloud 対応の永続ストアのデータは移行後に消失します。
以下は私の関連コードです:
ios - iOS コア データ NSPersistentStoreCoordinator がデータベースを開かなかった
iOS の Core Data に奇妙な問題があり、再現できないようです。それを報告する一部のユーザーで時々発生します。iOS クラッシュ レポートから得られるエラー:
CoreData: -[NSPersistentStoreCoordinator _coordinator_you_never_successfully_opened_the_database_so_ Saving_back_to_it_is_kinda_hard:] + 56
スクリーンショットは次のとおりです (製品名は省略されています)。
難しいのは、そのエラーで検索結果が得られないことです。ここに私の(関連する)コードがあります:
保存:
モック:
PSC:
議事録:
99% の確率で動作するため、セットアップは問題ないように見えますが、データベースを開いていないというエラーが表示されることがあります。デバッグできないので、原因を突き止めるのは難しいです。PSCはゼロになるのでしょうか?そして、それはなぜでしょうか?また、MOC は 1 つのスレッドのみにバインドする必要があることを知っていますが、クラッシュさせることができないため、これに関して問題があるとは思いませんか?
アドバイスをありがとう!
ios - 既存の sqlite での永続ストア マネージャーの NSPersistentStoreFileProtectionKey の変更
アプリがバックグラウンドにあるときに addPersistentStoreWithType を呼び出すと、sqlite
ファイルが利用できないことがあり、次のエラーが発生しました。
[モデル createPersistentStoreCoordinatorWithStoreURL:] 387 行目 $ sqlite 暗号化状態 NSFileProtectionCompleteUntilFirstUserAuthentication エラー : エラー Domain=NSCocoaErrorDomain Code=256 "The operation could't be completed. (Cocoa error 256.)" UserInfo=0x1560e540 {NSUnderlyingException=authorization denied, NSSQLiteErrorDomain=23}
これは、ファイルがまだ保護されているためであることがわかりました(デフォルトではNSFileProtectionCompleteUntilFirstUserAuthentication
、ユーザーが再起動後に初めてデバイスのロックを解除した後、保護されたデータが利用できるようになっています)。ただし、大量のクラッシュが発生しているため、これは正しく動作していないように感じます。また、実際に再起動した後も多くの人がまだデバイスをロックしているとは想像できません。
したがって、このように構成を調整して永続ストアコーディネーターを追加しています
質問:
- これにより、デバイスがロックされている場合でもバックグラウンドでファイルを利用できることが保証されますか?
- を変更すると、これにより sqlite (/ データ内) が壊れることはあり
NSPersistentStoreFileProtectionKey
ますか? - 機密データをデータベースに保存していませんが、使用時にセキュリティ上の懸念はあります
NSFileProtectionNone
か?