建設的なコメントを集めることができるかどうか疑問に思っています。さて、各タブのアクティビティ グループと関連する子アクティビティを含むタブ付きアプリケーションを開発しています。アクティビティの 1 つはファイル ダウンローダを処理します。サーバーからのダウンロード リンクを待機し、受信したダウンロードがバックグラウンドで開始されます。完了すると、ファイル (ほとんどが PDF) が汎用ビューアーで開きます。この部分は非常にうまく機能します。
さて、アプリの要件についてですが、アクティビティをバックグラウンドで実行したいと思います。ユーザーがダウンロード ページにいる場合、進行状況ダイアログに必要なメッセージが表示されます。別の画面に切り替えることを決定したユーザーは、別の画面に移動します。実際には、ダウンローダー アクティビティはバックグラウンドで実行されるはずです。
典型的なダウンロード アクティビティ クラスは次のようになります。
public class DownloadActivity extends Activity {
public void onCreate(Bundle state) { //code here}
public void onPause() {//can anything be done here?}
public boolean onKeyUp(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
//go back to previous screens to check other features
TabGroupActivity parentActivity = (TabGroupActivity)getParent();
//onBackPressed()- current activity is killed and new one is created
parentActivity.onBackPressed();
return true;
}
return super.onKeyUp(keyCode, event);
}
}
ユーザーが他の画面で遊んでいる間、バックグラウンドで動作するように上記のアクティビティを変更したいと思います。
何かご意見は?
あまり混乱しないことを願っています!上記のいずれかを理解していない場合はお知らせください。
前もって感謝します!