2011-01-05 22 views
1

私のアプリケーションでは、RSSフィードが読み込まれるサービスがあります。サービスが読書を終えたら、私は自分のアプリケーションを更新し、ダウンロードした情報をリストビューに取り込む必要があります。データがカスタムオブジェクトに格納されているため、ブロードキャストレシーバとインテントを使用すると機能しません。それをする最善の方法は何ですか?データをカスタムオブジェクトに格納されているため、放送受信機を使用し、かつ意図は動作しないでしょうサービスからアクティビティへのデータの取得

どうもありがとう、

Gratzi

答えて

1

「カスタムオブジェクト」にデータを保存しないでください。

これを行うにはどうすればよいですか?

ステップ1:データベースを使用します。

ステップ#2:放送Intentを経由して、データベース内に新しいデータがあることを活動に警告、またはサービスに渡さMessenger経由、またはサービスに渡さcreatePendingResult()によって作成PendingIntent経由、またはContentProvider経由ファサードとコンテンツオブザーバなど

ステップ3:アクティビティには、データベースrequery()を呼び出すだけで、データベースからデータをロードすることができます。Cursor

0

1)インテントのカスタムクラスデータを取得する最も簡単な方法は、データをプリミティブ型に変換し、putStringなどのデータ型でこのデータを入れ、コンストラクタを対応する送信データにカスタムオブジェクト活動中。

2)これを行う他の方法は、カスタムクラスをパーセル可能に拡張し、対応するメソッドをオーバーライドすることで、パーセルブルクラスオブジェクトをインテントで送信できるようになります。 詳細はHow to send an object from one Android Activity to another using Intents?をご覧ください。

関連する問題