2010-03-25 7 views
27

startService() yeni bir Hizmet örneğini mi yoksa mevcut olanı mı kullanıyor? Örneğin, aşağıdaki kodda, iki UpdateService örneği veya yalnızca bir UpdateService örneği oluşturur mu? Teşekkürler. Hizmet zaten başlatılmışsastartService() yeni bir Hizmet örneğini mi yoksa mevcut olanı mı kullanıyor?

int[] appWidgetIds = new int[] {1, 2}; 
    for (int appWidgetId : appWidgetIds) { 
     Intent intent = new Intent(context, UpdateService.class); 
     intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, appWidgetId); 
     context.startService(intent); 
    } 

cevap

48

, ikinci kopya olarak başlamazsa, ancak onStart() hala mevcut örneğinde denir. Hizmetler doğal tekildir - hizmetin tam olarak 0 veya 1 kopyası vardır.

+0

Teşekkürler @CommonsWare Sorunuzu cevapladım, cevabınızı her gördüğümde, anlaşılması en kolay ve faydalı ve cevabınızı buldum :) – blackHawk

14

onStart yöntemi şu an için kullanımdan kaldırılmıştır, bunun yerine onStartCommand kullanın.

İlgili konular