远程绑定服务是否获得它绑定到的进程的前台亲和力?

does a remote bound service get foreground affinity of process it is bound to?

我有一个有两个进程的应用程序。让我们称它们为 Main 和 Remote。两者都有服务。主进程服务是前台服务(带有通知)。远程服务绑定到主进程,但它本身不是前台(没有通知,没有调用 startForeground)。

问题是 android 是否会考虑远程服务前台,因为它绑定到前台进程?

我试图从 adb 中获取此信息,但据我所知,该信息不存在:

* ServiceRecord{eb553a7 u0 com.example.app/.remote.remoteProcess.ipcCommunication.RemoteProcessService}
    intent={cmp=com.example.app/.remote.remoteProcess.ipcCommunication.RemoteProcessService}
    packageName=com.example.app
    processName=com.example.app:remote
    baseDir=/data/app/com.example.app-2/base.apk
    dataDir=/data/user/0/com.example.app
    app=ProcessRecord{d194a7f 11618:com.example.app:remote/u0a222}
    createTime=-8m5s459ms startingBgTimeout=--
    lastActivity=-45s353ms restartTime=-7m29s395ms createdFromFg=true
    startRequested=true delayedStop=false stopIfKilled=false callStart=true lastStartId=11
    Bindings:
    * IntentBindRecord{608134d CREATE}:
      intent={cmp=com.example.app/.remote.remoteProcess.ipcCommunication.RemoteProcessService}
      binder=android.os.BinderProxy@1dfde02
      requested=true received=true hasBound=true doRebind=false
      * Client AppBindRecord{9825313 ProcessRecord{8cb8fdb 11552:com.example.app/u0a222}}
        Per-process Connections:
          ConnectionRecord{40c25cb u0 CR com.example.app/.remote.remoteProcess.ipcCommunication.RemoteProcessService:@5a6e89a}
    All Connections:
      ConnectionRecord{40c25cb u0 CR com.example.app/.remote.remoteProcess.ipcCommunication.RemoteProcessService:@5a6e89a}

我相信您正在寻找的答案是 here:

An app is considered to be in the foreground if any of the following is true:

... Another foreground app is connected to the app, either by binding to one of its services or by making use of one of its content providers...