Bir android uygulaması üzerinde çalışıyorum ve etkinlik yaşam döngüsü geri çağırma işlemini kaydetmeye çalışıyorum. onCreate
yöntemde benim başlatıcısı aktivite (Agreement.java) olarakAndroid aktivite yaşam döngüsünü kaydettirme
Ben şu var: Anlaşma kararlaştırılmış olup olmadığını
this.getApplication().registerActivityLifecycleCallbacks(new LoginManager());
Bu aktivite bir çek yapar ve eğer öyleyse hemen bitirir ve LoginActivity çağırır. java ama benim faaliyetimde bulunan tost bildirimi geri arama sınıfı görünmüyor ve ne benim logcat mesajlarımı yapıyor, hem de onun işten çıkması gibi görünmüyor. Aşağıda
etkinlik çağrısı uygulayan LoginManager sınıfpublic class LoginManager extends Application implements Application.ActivityLifecycleCallbacks
{
private final String TAG = "LoginManager";
@Override
public void onActivityCreated(Activity activity, Bundle savedInstanceState)
{
Toast.makeText(activity, "Activity Created", Toast.LENGTH_LONG).show();
Log.d(TAG, "Activity Created");
long currentEpochTime = System.currentTimeMillis()/1000l;
Log.d(TAG, "Current Epoch: " + currentEpochTime);
CommonTasks commonTasks = new CommonTasks(activity);
SharedPreferences settings = commonTasks.getAppsSharedPreferences();
long timeDifference = currentEpochTime - settings.getLong(Defines.SharedPreferenceSettings.LAST_ACTIVE_EPOCH, 0);
Log.d(TAG, "Time Difference: " + timeDifference);
if (timeDifference >= 120) //2 Minutes
{
Log.d(TAG, "Logging out");
//Over 2 minutes so we need to logout
Intent intent = new Intent(activity, LoginActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP);
activity.startActivity(intent);
}
else
{
Log.d(TAG, "Not Logging Out");
//No need to logout, save the current time
SharedPreferences.Editor editor = settings.edit();
editor.putLong(Defines.SharedPreferenceSettings.LAST_ACTIVE_EPOCH, currentEpochTime);
editor.commit();
}
}
Dolayısıyla, sadece yinelemek için destek olup, anlaşma sınıf yaşam döngüsü geri arama (LoginManager) anında kapanır kaydeder ve LoginActivity gösterir ama tost ve logcat değil tetiklemiştir. Eğer Manifestte uygulamanız sınıfın sınıf adını ayarlamak
Teşekkür
den
kaldırmak ve günlük bir şey üretir? – Petro
2 dakika sonra yeni bir etkinlik başlattıklarında kullanıcıları zorla Giriş ekranına alıyorsunuz? Bu, bir Aktivitede 2 dakikadan daha uzun bir süre kalmaktan vazgeçmiyor ... –
@ cricket_007 Bu konuda endişelenmenize gerek yok – Boardy