何时启动和停止应用内计费服务?

6
一个简单的问题,但我无法解决:何时开始和停止计费服务?我考虑了两个决定:
  • 在onCreate中启动,在onDestroy中停止
  • 在onResume中启动,在onPause中停止
什么是最佳实践?提前感谢。
1个回答

0
我建议您的计费服务从IntentService派生,这样它将在需要时自动启动/停止。您可以使用startService(Intent)启动它,然后当它完成工作时,它将关闭自己。 IntentService还提供了内置队列,因此一次只处理一个意图,并且具有自己的工作线程。
据我回忆,您还需要一个接收器来使用IAB,该接收器可以使用Intent调用服务,并根据需要设置操作。

IntentService在(onHandleCommand)最后一个服务完成时调用stopSelf。但是此时服务并不总是完成。如果服务需要向MarketBilling发送消息,则需要连接到MarketBillingService。当它绑定到服务时,它调用bind(),然后从onHandle返回,稍后ServiceConnection对象接收onServiceConnection回调。如果此时Service已死亡(尽管我在Android 3.2上测试时并非如此),那么我会期望事情失败,因为上下文已死亡。 - arberg

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接