3

これにはかなりの数のスレッドがあることは知っていますが、どれも私が探しているものを満たすものではないようです. ここに私の制約があります:

  • プライベート API/フレームワークまたは文書化されていないディレクトリ アクセスを使用するハッキングではなく、そのためにアプリが拒否されるリスクがあります
  • 異なるベンダーやアプリ開発者間でデータを共有できる
  • データはアプリのライフサイクル外でも保持できます (アプリが削除された後でも)

更新: 一般的に、サード パーティのクラウドベースのサービスを使用して目標を達成することは避けようとしていました。しかし、もし私がしなければならないなら、私はそれがこの1つの制約を満たすことを望んでいました.

  • どのiOSデバイスと通信しているかを知ることができます。デバイスを一意に識別する必要はありません (これは、私たち全員が経験したように、UDID に関する悪意のある議論ルートに入ります)。しかし、異なる iOS デバイス間で区別できる限り、問題はありません。
4

5 に答える 5

4

これもちょっと必要です。私はすべてのアプリのバックエンドとして Parse.com を使用しています。Parse.com の無料利用枠は開発のニーズを満たすはずです。

Parse には iOS、Android、Windows 8、OS X、JavaScript、および .NET で利用可能な API があり、あらゆるプラットフォームのクラウドですべてのデータを利用できます (Core Data や iCloud とは対照的です)。また、リモートで実行して情報をリモートで処理し、データをアプリに戻すことができるコードである「Cloud Code」も提供しています。

アプリのクラウド ストレージについては、必ずParse.com をチェックしてください。私の経験では、それは本当に仕事を成し遂げます。

データの永続性については、FMDBを検討することをお勧めします (ただし、データをローカルに永続化することにした場合、データはアプリと共に削除されますが、とにかく役立つ可能性があります)。多くの場合、Core Data はやり過ぎです。

編集: Parse.com には「インストール」クラスがあり、コードを入力しなくても、アプリがインストールされているすべてのデバイスが (iOS または Android を実行しているかどうかにかかわらず) 一意にリストされます。

于 2013-10-10T01:05:50.573 に答える
3

TextExpander の作成者によるこのブログ投稿が役立つかもしれません。

Smile は、WWDC で Apple のエンジニアとこの問題について話し合い、バグ (#14168862) を提出し、そのバグの状態をチェックすることで、これに対応しました。また、TextExpander データを新しい場所に保存することによる回避策も開発しました。リマインダーでは、データを保存および取得するためにユーザーの同意が必要です。通常、完了したリマインダーはインターフェイスに表示されません。過去のリマインダーは、完了したリマインダーの下部に表示されます。

TextExpander touch 2.1 (およびそれ以降) は、共有スニペット データを過去の完了済みリマインダーに保存することをサポートします。更新された SDK を作成し、開発者にその進捗状況を通知しました。最終的な SDK は、Apple の iOS 7 の公式発表が終了してから数時間以内に準備が整いました。

更新 (2013 年 11 月 22 日) TextExpander のチームは最近、App Review Team との間で問題を抱えていた ため、これは最善の方法ではない可能性があります。

于 2013-10-17T20:11:34.250 に答える
0

私にとって(私は2つのアプリとウィジェットを持っています)最良の解決策はSSKeyChainを使用することであり、ここCapabilitiesのようにアプリに追加することを忘れないでください

または、サードパーティのライブラリを使用したくない場合は、ここNSUserDefaultsのようにグループ識別子を使用および設定できますが、データを共有するすべてのアプリの AppGroups セクションにグループ識別子を追加することを忘れないでください。Capabilities

于 2016-08-04T08:12:33.857 に答える
0

これを行う方法の 1 つは、THRIFT を使用することです。これは、バックエンド サーバー (プライベート) を必要とするデータ通信プロトコルであり、THRIFT は多くの言語/プラットフォームにコンパイルできます。データを記述するためのメタ言語があり、それを多くの言語にコンパイルすることができます。一度データ定義を記述すれば、多くのプラットフォームで使用できます。

詳細については、.

http://thrift.apache.org/

于 2013-10-23T12:56:19.087 に答える