Açın kendi başka bir uygulama () niyet | Netgez.com
SORU
6 Mayıs 2010, PERŞEMBE


Açın kendi başka bir uygulama () niyet

Benim kendi programları güncellemek için nasıl biliyorum, ve programları önceden tanımlanmış bir Urı (örneğin sms veya e-posta için) kullanarak nasıl açılacağını biliyorum

MyTracks veya dinliyorlar bilmiyorum başka bir uygulama açmak için bir Niyet oluşturmak için nasıl bilmek istiyorum.

DDMS den bu bilgiyi aldım, ama kullanabileceğim bir Niyet için bu bir dönüm başarılı olmuş etmedim. Bu açılış sadece el MyTracks ne zaman alınır.

Yardımlarınız için teşekkürler

05-06 11:22:24.945: INFO/ActivityManager(76): Starting activity: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.google.android.maps.mytracks/com.google.android.apps.mytracks.MyTracks bnds=[243,338][317,417] }
05-06 11:22:25.005: INFO/ActivityManager(76): Start proc com.google.android.maps.mytracks for activity com.google.android.maps.mytracks/com.google.android.apps.mytracks.MyTracks: pid=1176 uid=10063 gids={3003, 1015}
05-06 11:22:26.995: INFO/ActivityManager(76): Displayed activity com.google.android.maps.mytracks/com.google.android.apps.mytracks.MyTracks: 1996 ms (total 1996 ms)

CEVAP
6 Mayıs 2010, PERŞEMBE


Öncelikle, bu kavramı "Uygulama" Android biraz genişletilmiş.

Bir uygulama - teknik bir süreç birden fazla aktiviteleri, hizmetleri, içerik sağlayıcı ve/veya yayın dinleyici olabilir. Eğer bunlardan en az biri çalışıyorsa, uygulama ve çalışıyor (işlem).

Ne tanımlamak için ne kadar istiyorsun "uygulamasını Başlat".

Tamam... burada deneyebilirsiniz.

  1. action=MAIN category=LAUNCHER ile bir niyet oluÅŸturun
  2. Geçerli bağlama context.getPackageManager PackageManager
  3. Niyet category=LAUNCHER, action=MAIN packageManager.resolveActivity(<intent>, 0) ana/ilk etkinlik için bulunduğu packageManager.queryIntentActivity(<intent>, 0) başlatıcısı
  4. İlgilendiğinizActivityInfo
  5. ActivityInfo, packageName name
  6. Son olarak, category=LAUNCHER, action=MAIN, componentName = new ComponentName(packageName, name) ve setFlags(Intent.FLAG_ACTIVITY_NEW_TASK) ile birlikte baÅŸka bir niyet oluÅŸturun
  7. Son olarak, context.startActivity(newIntent)

Bunu PaylaÅŸ:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • gsipek

    gsipek

    20 Temmuz 2007
  • Rozetked | Обзоры

    Rozetked | Ð

    5 AÄžUSTOS 2011
  • Ryan Ha

    Ryan Ha

    9 NİSAN 2006