1

私の phonegap 2.8.1 アプリの 1 つが、Apple に拒否されました。これは、5 MB を少し超えるストレージを使用し、iCloud には多すぎるためです。これは、そこに保存するデータの量と一致するローカルストレージを意味すると思います。その localstorage は、私のアプリで次の 2 つの目的で使用されます。

  • a) 何千ものキーを持つキー値データベース。これはデータ ファイルから再作成できます。ランダムにアクセスされます。

  • b) ユーザーが作成した設定と環境設定。これは再作成できず、iCloud バックアップが役立ちます。

私がする必要があると思うのは、これには 2 つの異なるストレージを使用することです。1 つは「バックアップしない」とマークされ、もう 1 つは「バックアップを行う」とマークされます。

これには 3 つの可能性があります。

  1. ローカルストレージが 2 つあるのですが、どうすればいいですか? プラグインを異なるパラメーターで 2 回リストすることは可能でしょうか? どういうわけか、ストレージの 1 つだけをバックアップする必要があることを iOS に伝えます。どうすればいいですか?

  2. それらの 1 つに SQLStorage を使用し、ストレージの 1 つだけをバックアップする必要があることを何らかの方法で iOS に伝えます。どうすればいいですか?

  3. ファイルを使用してユーザー設定をシリアル化し、ローカルストレージを「バックアップしない」とマークします。どうすればよいですか? 何らかの方法で、ローカル ストレージをバックアップしないように iOS に指示します。どうすればいいですか?(編集: phonegap、BackupWebStorage には、このためのxml 設定があり、機能する場合は情報が返されます)

  4. データベースの 1 つにサードパーティのストレージ製品を使用します。その場合、どの製品を使用しますか?

私は通常、Objective C でプログラミングすることはありませんが、何をすべきかを正確に知っていれば、人を捕まえることができます。これがAndroidだったら、私はそれを行うことができたと思います。

4

2 に答える 2

1

1) 特定のファイルを「iCloud でバックアップしない」とマークすることができます。2) 特定のフォルダはドキュメントのようにバックアップするようにマークされ、その他のフォルダはキャッシュのようにバックアップしないようにマークされます。

https://developer.apple.com/library/ios/qa/qa1719/_index.html

于 2013-09-19T20:49:53.823 に答える
1

わかりました。ベータ テスターの 1 人から情報を得たところです。phonegap 2.8.1 の BackupWebStorage 設定が機能しているようです。これは、オプション 3 が実行可能であることを意味します。

  • 再作成できるキーと値のデータをローカル ストレージに保存し、すべての Web ストレージをバックアップの一部としてマークしません。
  • バックアップされるファイルにユーザー設定を保存する

ローカル ストレージをバックアップの一部としてマークしない

config.xml ファイル セット:

<preference name="BackupWebStorage" value="none" />

それが機能することを確認するために、Apple は次の方法で iCloud の管理下にあるデータ量を確認することを推奨しています。

  • アプリをインストールして起動する
  • [設定] > [iCloud] > [ストレージとバックアップ] > [ストレージの管理] に移動します
  • 必要に応じて「すべてのアプリを表示」をタップ
  • アプリのストレージを確認する

これはシミュレーターでは実行できないことに注意してください。実際のデバイスが必要です。

ユーザー設定用のファイルを作成する

まだテストされていませんが、phonegap には API があります。アップルから:

重要なデータは、/Documents ディレクトリに保存する必要があります。重要なデータとは、ユーザー ドキュメントやその他のユーザー生成コンテンツなど、アプリで再作成できないデータです。

Phonegap にはファイル APIがあります。ファイルにメタデータを設定できます。

「com.apple.MobileBackup」拡張属性のみがサポートされています。iCloud によるファイルのバックアップを有効にしない場合は、値を 1 に設定します。iCloud によるファイルのバックアップを再度有効にするには、値を 0 に設定します。

于 2013-09-20T00:23:02.807 に答える