2016-11-28 7 views
4

お互いに通信できる3つのスピーディなアプリを持つ必要があります。アプリケーション1は、サーバーと通信してローカルDBに情報を格納する基本アプリケーションと考えてください。アプリ2と3は、アプリ1で作成されたDBに読み込む必要があります(とPOSSIBLY書き込み)。複数のスウィフトアプリ間でデータベースを共有する

ネットを見ると、 3つのアプリがすべて同じアプリグループの下にある場合、Realm DBを作成したり保存したりできる共有フォルダが自動的に作成されますか?アプリ2と3はNSFileManagerを使ってこの共有ファイルとやりとりしますか?私は実際にこの事例を見つけることはできないようです。

+0

3つのアプリケーションをインストールして、それらのいずれかを使用できるようにすることはできません。すべてのデータを保持し、変更を他のアプリケーションにプッシュできるサーバー側を実装する必要があります。複数のアプリケーションを連携させることはできますが、内部データベースを共有することはできません。 – Starlord

答えて

0

最も簡単なAPIである複数のクライアントアプリケーションから読み書きするには、中央データベースが必要です。つまり、AppsのAPIが必要です。共有フォルダや共有レルムDBよりも難しいと思っているかもしれませんが、実際そうではありません.Nナンバーモバイルアプリのデータ共有方法を再考しようとすると、実際に問題が複雑になっています。お互いに、N個のアプリがすべて同じデバイスに存在していても、iOSではアプリがサンドボックスにあり、それを回避しようとしています。

私の推測では、この問題へのアプローチは、Realm DBの使用を中心にしていますが、Realm DBはおそらく、Realm DBが動作するように設計されていれば、Realm DBは1つのアプリケーションを提供するLOCALデータベース複数のアプリケーションでは、FirebaseやAmazon S3などのAPIツールになります。

APIを作成する必要があり、APIには1つのデータベースがあります。

例えば、App1は、App2が取得して表示できる必要がある画像を保存する必要があります。

と呼ばれる方法がありますあなたのAPI:今のApp1は、データベース内、または、サーバのハードドライブ上のいずれかで、あなたのAPIを呼び出すことで画像を保存し、画像が保存される

SavePicture(byte[] picture) 

は、どちらかの方法があります保存された画像のデータベースに記録する。

今App2のは、新しい写真を望んでいる、App2の上の更新ボタンがあると言って、更新ボタンのタッチがあなたのAPIを呼び出して、別の方法が

[byte[]] GetPictures() 

呼ばGetPictures APIメソッドは、それぞれ、[]バイトの配列を返します。 App2が表示できるイメージです。

Firebaseをチェックアウトすることができます。これは、APIの構築に慣れていないサードパーティ製ツールのようです。また、PHP、Ruby on Rails、ASP.NET Web APIを使用してAPIを構築する方法も学びます。 MySQL、PostgreSQL、Sql Server、MongoDB、RavenDBなどのデータベースを使用しています。

+0

App1には、私が質問したようにサーバーに接続するAPIがあります。他のすべてのアプリは、サーバーから情報を取得してローカルに保存した後、アプリ1で作成されたローカルDBと通信します。すべてのサーバーのリクエストはapp1を経由する必要があります – user2363025

+0

@ user2363025 APIが必要です。APIを使用しているので、既にApp2とApp3に使用しています。 –

+0

@ user2363025 Realm DBを使用して解決しようとしていませんApp1とApp2の間のデータの共有? –

関連する問題