1

調べているのですが、何かが足りない気がします。

ログインできるアプリがあります。アプリを開くたびに、そのログイン ページを強制的に通過する必要があります。ログイン以外のアクティビティを再開することはできません。

私が持っているマニフェストで

        android:clearTaskOnLaunch="true"

ログインアクティビティとして使用したいメインアクティビティで、

        android:finishOnTaskLaunch="true"

としても

        android:excludeFromRecents="true"

残りの活動について。

ログインから別のアクティビティに移動し、ホームに移動してアイコンからアプリを再起動すると、問題のある状況が発生します。ログインページに戻るはずですが、そうではありません。何か案が?

また、Eclipseといくつかのマニフェスト属性に問題があることを知っているので、Eclipse経由ではなく、通常のapkとしてインストールしています。

おそらく、アクティビティの起動がアプリのアイコンの押下によるものであることを検出する方法があれば、その方法で管理できますが、それも可能だとは思いません。

4

2 に答える 2

1

またはonResumeonRestartログイン タイムアウトなどの一連のフラグを確認しIntent、元のアクティビティを終了すると同時に、 を使用してユーザーをログイン アクティビティに強制的に戻すことができます。

私はこの方法を支持するか、単にアプリを終了するか、onPauseまたはアプリケーションonStopをやみくもに閉じる前にいくつかのチェックを行う機会が得られるので気に入っています。

または、android:noHistoryマニフェスト ファイルで タグを使用してみてください。

「true」の値は、アクティビティが履歴トレースを残さないことを意味します。タスクのアクティビティ スタックには残らないため、ユーザーはそこに戻ることができません。

などのタグもあります。android:finishOnTaskLaunch

ユーザーがタスクを再度起動する (ホーム画面でタスクを選択する) たびに、アクティビティの既存のインスタンスをシャットダウン (終了) する必要があるかどうか。シャットダウンする必要がある場合は「true」、そうでない場合は「false」。デフォルト値は「false」です。

詳細はこちら: http://developer.android.com/guide/topics/manifest/activity-element.html

于 2013-07-03T15:25:06.977 に答える
0

おそらく最も簡単で最速の方法は、finish(); でアクティビティを終了することです。これは、アプリがバックグラウンドに置かれたときに呼び出されるためです。

XML構成でも解決できるかもしれませんが、私が心から知っていることはありません。

于 2013-07-03T15:22:44.943 に答える