開発中のアプリケーションに DownloadManager のような機能を実装しています。AsyncTask を使用して、ダウンロードをバックグラウンドにプッシュします。この AsyncTask は、私のアクティビティの 1 つでインスタンス化された
、たとえばという名前のサービス内にあります。DownloadService
したがって、これは、アクティビティの異なるインスタンスから複数のダウンロードを開始できることを意味します。
私がやりたいのは、現在実行中のすべてのダウンロードに進行状況を表示し、ダウンロードを一時停止または再開するボタンを表示できる特定のアクティビティを用意することです。
2 に答える
1
そのようなことが必要な場合は、サービスで開始されるすべての非同期タスクを配列に格納し、http://developer.android.com/reference/android/os/AsyncTask.html#getStatusでステータスを確認できます。 %28%29 .
お役に立てれば!
于 2012-06-23T14:31:59.377 に答える
0
アプリケーションごとにこのクラスのインスタンスが 1 つしか存在しないためDownloadService
、Activity 内に格納する代わりに、クラス メンバーとしてアプリのクラス内に格納します。Application
その後、 を呼び出してアクティビティで取得できます((YourApplication)getApplication()).getDownloadService()
。あなたはしなければならない:
- アプリケーションを拡張するクラスを作成します。
- マニフェスト ファイルの
<application>
タグで次のように宣言します。android:name="YourApplication"
- 呼び出してアクティビティで使用します
((YourApplication)getApplication()).someMethodToGetDownloadService()
于 2012-06-23T14:32:33.490 に答える