SORU
30 Ocak 2010, CUMARTESİ


Bir arka plan görevi geçerli ön plan uygulama belirlenmesi veya hizmet

Yerleşik uygulamaları (rehber, mesajlar vs.) herhangi bir çalışan bilir ki arka planda çalışan bir uygulama yapmak istiyorum.

Bu yüzden benim sorular şunlardır:

  1. Nasıl arka planda uygulama çalıştırmak gerekir.

  2. Arka plan başvurumu nasıl uygulama şu anda ön planda çalışan ne olduğunu bilemez.

Tecrübesi olan arkadaşlar gelen tepkiler büyük mutluluk duyacağız.

CEVAP
1 EKİM 2012, PAZARTESİ


"2. saygılar Nasıl benim arka plan uygulama şu anda ön planda çalışan ne olduğunu biliyorum."

Bu benim deneyim sistem çöp her türlü döner getRunningAppProcesses() yöntemi kullanmayın ve RunningAppProcessInfo.IMPORTANCE_FOREGROUND olan birden çok sonuç alırsınız. getRunningTasks() kullanın

Bu, geçerli ön plan uygulama, çok kolay: belirleyebilir ve bu hizmeti kullanıyorum kodudur

ActivityManager am = (ActivityManager) AppService.this.getSystemService(ACTIVITY_SERVICE);
// The first in the list of RunningTasks is always the foreground task.
RunningTaskInfo foregroundTaskInfo = am.getRunningTasks(1).get(0);

Hepsi bu kadar, daha sonra kolayca app/faaliyet ön bilgi erişim:

String foregroundTaskPackageName = foregroundTaskInfo .topActivity.getPackageName();
PackageManager pm = AppService.this.getPackageManager();
PackageInfo foregroundAppPackageInfo = pm.getPackageInfo(foregroundTaskPackageName, 0);
String foregroundTaskAppName = foregroundAppPackageInfo.applicationInfo.loadLabel(pm).toString();

Bu etkinlik menifest ek bir izin gerektirir ve mükemmel çalışır.

<uses-permission android:name="android.permission.GET_TASKS" />

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • kamaniusilelis

    kamaniusilel

    10 HAZİRAN 2011
  • ThreadBanger

    ThreadBanger

    2 Mart 2007
  • wwjoshdo

    wwjoshdo

    25 Mayıs 2009