2011-06-30 5 views

cevap

0

Faturalandırma hizmetinizin IntentService'den türetilmesini öneririm, böylece olması gerektiğinde otomatik olarak başlatılacak/durdurulacaktır. StartService'i (Intent) kullanarak başlatırsınız ve iş bittiğinde, kendini kapatır. IntentService ayrıca sıraya göre kuyruğu da sağlar, böylece bir kerede yalnızca bir niyet işlenir ve kendi çalışan iş parçacığı olur.

Hatırlayacağım gibi, IAB'yi kullanmak için bir Alıcınıza da gereksiniminiz vardır; bu, daha sonra Hizmeti bir Amaçla arayabilir ve eylemin ne yapılması gerektiğine bağlı olarak ayarlanmasını sağlayabilir.

+0

IntentService, (son) onHandleCommand hizmeti bittiğinde kendisini durdurur. Ama o zaman servis her zaman yapılmaz. Hizmetin MarketBilling'e bir mesaj göndermesi gerekiyorsa, MarketBillingService'e bağlanması gerekir. Hizmete bağlandığında, bind() işlevini çağırır, sonra onHandle'dan döndürür ve daha sonra ServiceConnection nesnesi bir onServiceConnection geri çağrısı alır. Hizmet bu süre içinde ölmüşse (ki bu Android 3.2'de test ettiğim zaman olabilirdi), o zaman bağlamın ölümünden dolayı bir şeylerin başarısız olmasını beklerdim. – arberg