SORU
31 Mart 2011, PERŞEMBE


Nasıl Android app ön planda çalışıyorsa söyleyebilir miyim?

C2dm tarafından tetiklenen benim android uygulaması durum çubuğu bildirim yapıyorum. Eğer uygulama çalışıyorsa bildirim görüntülemek için istemiyorum. Nasıl uygulamayı çalıştıran ve ön planda ise belirliyorsunuz?

CEVAP
14 HAZİRAN 2012, PERŞEMBE


Alternatif olarak, görevleri getRunningTasks yöntemi ile çalışan ActivityManager ile kontrol edebilirsiniz. Eğer senin görevin ise o zaman görevleri iade Listesinde ilk görev(ön planda görev) ile kontrol edin.
İşte kodu örnek:

public Notification buildNotification(String arg0, Map<String, String> arg1) {

    ActivityManager activityManager = (ActivityManager) appContext.getSystemService(Context.ACTIVITY_SERVICE);
    List<RunningTaskInfo> services = activityManager
            .getRunningTasks(Integer.MAX_VALUE);
    boolean isActivityFound = false;

    if (services.get(0).topActivity.getPackageName().toString()
            .equalsIgnoreCase(appContext.getPackageName().toString())) {
        isActivityFound = true;
    }

    if (isActivityFound) {
        return null;
    } else {
        // write your code to build a notification.
        // return the notification you built here
    }

}

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Derek Banas

    Derek Banas

    12 AĞUSTOS 2008
  • Doug Bernards

    Doug Bernard

    7 Kasım 2007
  • Microsoft Research

    Microsoft Re

    24 EKİM 2008