服务在Google Glass上超过了父应用程序?

jel*_*ion 7 android google-glass google-gdk

我有一个在同一个进程中运行的服务.

    <service
        android:name=".service.GlassService"
        android:exported="true"
        android:label="@string/app_name" />
Run Code Online (Sandbox Code Playgroud)

我使用startService()启动服务.

        startService(new Intent(this, GlassService.class));
Run Code Online (Sandbox Code Playgroud)

当我向下滑动并退出应用程序时,服务依然存在.当我从DDMS中删除它时,服务重新启动,调用服务START_STICKYSTART_NOT_STICKY没有任何区别.

我可以停止服务的唯一方法是当我显式调用stopService()stopItself()或省略startService()时.

在其他Android设备上不是这种情况.这种行为对Google Glass来说是典型的吗?

小智 1

这通常就是人们使用服务的原因。它们是长时间运行的进程,通常用于进行后台处理或从内容提供商同步数据。因此,这很容易成为一个扩展,它们可以比父进程的寿命更长。

来源:

  1. 您所描述的情况也发生在我的应用程序上,并且它在普通手机上运行
  2. 在这个 Google 文档[docs][1] 中是这样说的(阅读关于为什么服务不是线程的部分)

    [1]: http: //developer.android.com/reference/android/app/Service.html