3

私は Android 開発にかなり慣れていません。

私の問題は少しトリッキーです。

2 つのアクティビティを使用してアプリケーションを開発したいと考えています。

1 番目のアクティビティにはボタンがあります。ボタンをクリックすると、アクティビティ 2 が次のように開始されます。

アクティビティ 2 は 2 秒間フォアグラウンドになり、その後 8 秒間バックグラウンドに移行します。その後、再び 2 秒間フォアグラウンドに移行してから再びバックグラウンドに移行し、プロセスが続行されます。

その間、両方のアクティビティはそれぞれのタスクを継続する必要があります。

たとえば。音楽を再生するミュージック プレーヤーなどのアクティビティと、いくつかのファイルをダウンロードするアクティビティ 2 という名前の別のアクティビティを使用できます。

インテントの使用からアクティビティの最小化、通知バーへの通知の表示まで、さまざまなことを試しました。通知バーの問題は、通知バーを使用してアクティビティを再開すると、常に OnCreate() メソッドが呼び出され、アクティビティが再び開始されることです。

ボタンのクリックでアクティビティを開始できますが、最小化して同じ状態でポップアップする方法がわかりません。

タイミングの遅延のためにバックグラウンドでサービスを使用しています。

この問題に対する解決策を共有してください。

4

4 に答える 4

3

私は問題を解決しました。

解決策は、マニフェスト ファイルを次のように変更することです。

メイン アクティビティ コードに追加

android:launchMode="singleTask"

android:clearTaskOnLaunch="true"

子アクティビティ コードに追加

android:launchMode="singleInstance"

android:clearTaskOnLaunch="true"

それは私のアプリで完全に機能します:)

皆様の親切な貢献に感謝します

于 2012-05-29T10:05:08.560 に答える
3

あなたが言ったように、この問題の解決策を見つけたかもしれませんが、いずれにせよ、いくつか読むことをお勧めします..それはあなたがそれをよりよく理解するのに役立ちます:

沖.. 私はあなたのためにいくつかの努力とリンクを整理しました. たくさんの資料があるように思えますが、次の 15 分でそれらを読むために走る必要はありません.. 気楽に読んで、試して、学んでください。これをアドバイスとして受け取ってください。間違った方法で物事を行うことに慣れると、後で修正するのがはるかに難しくなります..

お役に立てば幸いです.. ;) 乾杯

于 2012-05-30T06:33:52.740 に答える
1

moveTaskToBack(真); タスク全体を後ろに移動します。つまり、両方のアクティビティを後ろに移動します。次に問題は、アクティビティを私が知らないフォアグラウンドに移動することです。

于 2012-05-24T06:44:00.497 に答える
0

使ってみましたか

this.moveTaskToBack(true);

これがあなたの探しているものかどうかわかりません。こちらもドキュメンテーション

于 2012-05-23T16:45:26.157 に答える