2

これは、アクティビティのすべてのハードワークを行うサービスを作成するための良いアイデアですか。IEの場合、アクティビティはインターフェイスとサービスの呼び出し、および必要なその他の機能だけを考慮し、サービスはアクティビティで機能する「ツール」になります。

4

2 に答える 2

1

はい、そうです...このビデオをご覧になることをお勧めします:

AndroidRESTクライアントアプリケーションの開発

そのビデオではRESTクライアントアプリについて説明していますが、同じ手法が他の多くの状況でも機能することが証明されています。

于 2010-12-23T18:16:26.077 に答える
1

まあ。データへのアクセスをカプセル化することは、特にテストが容易になり、データをキャッシュする機会が得られるため、良い考えです。しかし、過度に設計しないでください。Cristianによってリンクされたビデオで概説されているアプローチは、多くの(ほとんどの?)アプリにとってやり過ぎです。多くの場合、良い'ol AsyncTaskは、ほとんどの「ハードワーク」に十分です。そうでない場合は、間違いなくIntentServiceを次のオプションとして検討してください。AIDLとバインディングを備えた完全なサービスルートに進む前に、これらのオプションの両方を検討します。私は通常、バックグラウンドサービス(通知やデータ同期など)が必要な場合にのみ後者のルートに進み、メインアプリとデータを共有します(これはよくあることです)。ビデオのContentProviderパターンについては.. 。個人的には、これらはあなたがしない場合にのみ行う価値があると思います。データのキャッシュを制御したい(またはデータがキャッシュされておらず、デバイスが実際に記録システムである)場合、データを他のアプリケーションに公開したい。ほとんどの場合、カーソルではなくサービスインターフェイスにアプリコードを公開することを好みます。真剣に、過度に設計しないでください。

于 2010-12-24T05:56:40.150 に答える