0

plistユニバーサル アプリ用にデバイス間で同期する必要があるファイルが1 つあるセットアップがあります。現在、plistファイルはドキュメントディレクトリに保存されています。

私はオンラインでファイルの同期を保つ方法を探していましたが、多くの解決策が に基づいているようですCore Data。可能かどうかはわかりませんが、この 1 つのファイルを使用せずに同期する方法はありますCore dataか? もしそうなら、誰かが問題へのアプローチ方法についてアドバイスしてくれますか、それとも助けになる資料の方向性を教えてくれますか?

より具体的には、使用されているデバイスに plist ファイルの最新のコピーがあることを確認する方法が必要です。たとえば、朝食時に iPad で編集し、昼食時に iPhone にアプリをロードすると、朝食時に iPad を介して行われた編集が表示されるはずです。

4

2 に答える 2

0

設定で iCloud バックアップがオンになっている場合、iCloud はデバイス上のすべての (または選択的な) アプリのすべてのドキュメント ディレクトリを自動的にバックアップします。

しかし、上記のことは1日に1回起こると思います。リアルタイムで動作させるには、iCloud API を使用する必要があります。

これが役立つことを願っています。

于 2012-05-27T13:01:31.000 に答える
0

私の知る限り、POST リクエストを行うためのサーバー API を iPhone/iPad アプリに提供する必要があります。ファイル全体を POST するか、plist ファイルからの実際のデータを含むボディ (JSON/XML) を使用して POST リクエストを作成できます。サーバーで ETag/バージョン管理情報を維持する必要があります。同期を機能させるには、サーバー上で各ユーザーを一意に識別し、その plist 情報を保存する必要があります。

iPhone/iPad アプリでは、すべてのアプリの起動時に、HTTP 要求を作成して、リソース ETag (ファイルがアップロードされた場合) またはバージョン (plist ファイルのコンテンツが XML/JSON として投稿された場​​合) を確認します。精度を高めるために、アプリケーションでスケジューラ機能を開発することもできます。更新の場合は、新しい情報/plistファイルをダウンロードして保存してください。アプリケーション NSUserDefaults で ETag/version のエントリを保持し、このプロセス中に更新します。

フレンドリーなアドバイス: アプリが拒否される可能性があるため、ダウンロード可能なデータ/設定をApplication_Home/Documentsディレクトリに保存しないでください。Apple の開発者ポータルで、この投稿と関連ドキュメントをお読みください。

これは最初の考えにすぎません。これを即興で最適化することは、あなたが理解することです... :)
これが役立つことを願っています!

乾杯!!
アマール。

于 2012-05-28T10:14:01.843 に答える