2011-01-14 21 views
2

市場データを提供するアンドロイドアプリを開発したいと考えています。私は別のチュートリアルを読んできましたが、私はどのようにして自分のものを作ることができるか考えていますが、私は正しいアプローチを行い、すべての正しいプラクティスを実行していることを確認したいと思っていました。株式アプリケーションを設計するにはアドバイスが必要です

基本的に私は最新の市場データを持つ株のリストを作ることができるアプリを作りたかったのです。私はウェブサーバーから市場データを取得しています。アイテムの1つをクリックすると、そのストックに関する詳細情報が表示された別の画面が表示されます。私がしたいことがもっとたくさんありますが、私はそれから始めようと考えました。

私は、株式のリストと市場データを保存するデータベースを作る必要があると思っていました。リストと詳細ページはデータベースからデータを取得しますが、サーバーからデータをポーリングしてデータベースに保存するサービスが必要です。

データを共有する予定がない場合、またはローカルデータベースを作成するだけでコンテンツプロバイダを作成する必要がありますか?コンテンツプロバイダを使用すると利点がありますか?

データを最新の状態に保つための最良の方法はサービスですか?私のサービスがWebサーバーから定期的にデータを取得し続ける方法はありますか?これを行うことはまだ確かではありませんが、私がサービスを読むことに基づいて最良のアプローチのように思えます。

私は彼らがどのようにこれをデザインするかをコミュニティから聞きたいと思います。少なくとも、私が勉強しなければならないものとネットのheheで検索するものを特定するのに役立ちます。

ありがとうございます!

答えて

1

他のアプリケーション間でデータを共有しない場合は、コンテンツプロバイダを使用する必要はありません。データを共有するための共通のインタフェースを提供する以外の方法を使用する利点はありません。

はいサービスが最善の方法です。しかし、データ検索を行うためにスレッドを開始するサービスを取得する必要があります。定期的にサービスを開始するには、BroadcastReceiverAlarmManagerを使用してください。 manifest.xmlにBroadcastReceiverintent-filterを登録します。 AlarmManagerを使用してPendingIntentを発射し、BroadcastReceiverで取り上げるとServiceが開始され、Threadまたはが開始され、データを取得してデータベースに書き込むことになります。

+0

ありがとうございます!私はそれらの異なるクラスを読み始めるでしょう。今、私のデータベースを最新の状態に保つ方法について考えていますが、私のUIを更新するにはどうすればいいですか?私は2つの画面を持つことを計画しています.1つはリスト用で、もう1つはリスト項目の詳細な表示用です。 dbからデータを取得するために現在のアクティビティを通知するために使用できるものはありますか?それが最新のデータで私の見解を維持する最良の方法でしょうか? – Grish

+0

アクティビティが表示されたら、データベースにクエリを実行させます。 'CursorAdapter'を拡張したり、' SimpleCursorAdapter'を使用して 'Cursor'を渡してアダプタをインスタンス化すると、これを' ListView'アダプタとして使うことができます。カスタム 'CursorAdapter'のインスタンスで指定して、再クエリしてビューを更新することができます。それがより多くのことを助けることを望む。 – techiServices

+0

遅く返事をして申し訳ありませんが、コンピュータにアクセスすることなく離れていた。本当にありがとうございました。あなたがリストアップしたクラスを読んで始めました。私の質問は、ユーザーがアクティビティにとどまっていて、定期的に私のサービスを呼び出すタイマーを使用する必要がある場合、そのアクティビティでデータを更新したいのですか? – Grish

関連する問題