SORU
12 Mayıs 2011, PERŞEMBE


Nasıl bir aktivite olmadığını kontrol etmektir faaliyetine son bir uygulama için yığın?

Eğer kullanıcı o anki aktivite çıkarsanız ana ekrana geri dönüp dönemeyeceğini bilmek istiyorum.

CEVAP
5 HAZİRAN 2011, Pazar


Olasılık mevcut görevleri kontrol etmek için var ve onların ActivityManager kullanarak yığını.

Bu yüzden, eğer bir faaliyet sonuncu olup olmadığını belirlemek için:

  • istek android.izni.Bildirimde GET_TASKS izinleri.
  • Aşağıdaki kodu

    ActivityManager mngr = (ActivityManager) getSystemService( ACTIVITY_SERVICE );
    
    List<ActivityManager.RunningTaskInfo> taskList = mngr.getRunningTasks(10);
    
    if(taskList.get(0).numActivities == 1 &&
       taskList.get(0).topActivity.getClassName().equals(this.getClass().getName())) {
        Log.i(TAG, "This is last activity in the stack");
    }
    

Lütfen unutmayın, bu yukarıdaki kod ise tek bir görev varsa geçerli olacak. Eğer görev sayısı uygulamanız için var olacak her ihtimali varsa - diğer kontrol etmeniz gerekirgörev listesielemanları. Daha fazla görevler hakkında Tasks and Back Stack okuyun

GÜNCELLEME (Temmuz 2015):

getRunningTasks() kaldırılmış olduğundan, API 21 den daha iyi izleyinraukodrauganswer yaEd Burnette6* *(ikincisini tercih ederim).

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Jejoab

    Jejoab

    4 NİSAN 2008
  • Karan Thakur

    Karan Thakur

    23 HAZİRAN 2010
  • Propaganda Time

    Propaganda T

    19 EYLÜL 2010