AccountActivity.class
にタイマーを設定して、ユーザーがホームボタンを押さないようにして、カウントダウンを開始してユーザーをログアウトさせたり、ユーザーが画面をロックしたりしないようにします。タイマーは古いアクティビティで停止しません
しかし今、私はメソッドのために問題に直面しています。私のユーザがgetaccounttask()
メソッドを呼び出すボタンをクリックし、ユーザをAccountInformationActivity.class
にリダイレクトすると、メソッドも有効になり、タイマーはカウントダウンを開始します。
メソッドがカウントダウンしないようにする方法はありますか?AccountInformationActivity.class
にキャンセルするタイマーはありますか?
私の意図が始まる前にタイマーをキャンセルしようとしましたが、まだ動作しません。
私もハンドラを使用しようとしましたが、同じ問題が発生しました。私はまだAndroidがどのように機能するかを把握しようとしていますので、あなたの助けや解決に深く感謝します。
public class AccountActivity extends AppCompatActivity {
private Timer timer;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_account);
}
private class getaccounttask extends AsyncTask<String, Void, String>
{
@Override
protected String doInBackground(String... urlaccount)
{
StringBuilder result = new StringBuilder();
try
{
//My Codes
}
catch (Exception e)
{
e.printStackTrace();
}
return result.toString();
}
@Override
protected void onPostExecute(String result)
{
Intent intent = new Intent();
intent.setClass(getApplicationContext(), AccountInformationActivity.class);
startActivity(intent);
}
}
@Override
protected void onPause() {
super.onPause();
timer = new Timer();
Log.i("Main", "Invoking logout timer");
LogOutTimerTask logoutTimeTask = new LogOutTimerTask();
timer.schedule(logoutTimeTask, 300000); //auto logout in 5 minutes
}
@Override
protected void onResume() {
super.onResume();
if (timer != null) {
timer.cancel();
Log.i("Main", "cancel timer");
timer = null;
}
}
private class LogOutTimerTask extends TimerTask {
@Override
public void run() {
//redirect user to login screen
Intent i = new Intent(AccountActivity.this, MainActivity.class);
i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(i);
finish();
}
}
}
こんにちは、私もハンドラを試してみましたが、私は同じ問題を抱えています。 shouldNavigateのトラッキングの部分については、私はまだAndroidとJavaの新機能ではありません。あなたがいくつかのコードを提供できるなら、わかりやすく助けになるでしょう。 – iOSAndroid
編集を確認してください。あなたの必要性。 –
OMG..最終的にはうまくいった!どうもありがとう!私はこのような問題のために何週間も立ち往生してきました!再びすべてのおかげで! – iOSAndroid