2011-01-25 16 views
0

私はちょうどメモ帳のチュートリアルを見直し、彼らがデータベースをどうやって行っているかを見てきました。マルチテーブルデータベースに展開したい場合は、そのテーブルに必要なものをすべて実行した新しいプロバイダクラスを追加するだけですか?マルチテーブルデータベースの管理方法は?

第2の若干関連する質問には気にしない場合は、URIとは何ですか?アンドロイドでそれらを使用するにはどうすればよいですか?私は周りを検索し、 "ユニバーサルリソース識別子"で戻ってきました。

が 〜アエードーン

答えて

2

ありがとうプロバイダのアイデアは、それが公共のリソースの種類を扱っていることです。だからあなたは、連絡先プロバイダまたはノートプロバイダがあります。プロバイダは決してデータベースに結びついていません。 Noteプロバイダは、プロバイダインターフェイスの背後にある数十のテーブルにアクセスしている可能性があります。

プロバイダインターフェイスは、リソースに対するパブリックAPIであると考えることができます。一般的なリソースを共有するためのメカニズムとして、電話上のすべてのアプリケーションで使用できます。このAPIを実装する方法は、プロバイダ自体の実装の詳細です。プロバイダはデータベースをまったく使用しない場合があり(多分Webサービスのみを使用する)、マルチテーブル/マルチデータベース設計を使用する場合があります。

URIはユニバーサルリソースインジケータです。クリフのメモはこれです:uriはスキームとロケータを持っています。アンドロイドでは、スキーム:の前のURIの部分は、あなたが行うことを意図したものを決定するために使用されます。テキストが555-555-5551で送信されるようにするには、sms:// 5555555551のようなURIが登録されています。 555-555-5551は「データ」と呼ばれます。

hereを読んで理解することがずっとあります。言い換えれば、Androidでは、URIは頻繁にアクティビティを疎結合するために使用されます。たとえば、私の前の例では、送信されるのではなく、smsが送信されることだけに気をつけています。これにより、多くのアプリがsmsメッセージ、アプリをより良く、おそらくAndroidをプラットフォームに組み込んだものを送信できるように登録することができます。

+0

これは、複数のデータベーステーブルを使用する例をどのように拡張するかについては言及していませんが、この回答が必要な説明である可能性があります。複数のテーブルやデータベースを使用することに関するその他の質問がある場合は、私もそれらに答えることができます。 –

+0

詳細な返信をありがとうございます。だから、5テーブルのデータベースに取り組む最も良い方法は何でしょうか? – AedonEtLIRA

+0

それは本当にあなたが提供しようとしているものによって異なります。それは5つのテーブルすべてが予約をサポートする予約アプリケーションで、他のアプリが予約データストアにフックできるようにしたいのですか?もしそうなら、単一のコンテンツプロバイダが素晴らしいだろう。各データベースは、世界に公開したいスタンドアロンの独自のリソースですか?私は5の例を思いつくことができませんが、質問する必要がある質問は、私はコンテンツプロバイダーで世界に公開したいと思っているリソースは何ですか?次に、そのリソースをサポートするコンテンツプロバイダを設計します。それは理にかなっていますか? –

関連する問題