Grande número de RemoteServiceExceptions no MediaNotificationService do Google


10

Nas últimas 24 horas, vimos alguns milhares de falhas no Google MediaNotificationService:

Fatal Exception: android.app.RemoteServiceException
    Context.startForegroundService() did not then call Service.startForeground(): ServiceRecord{f9a4deb u0 <our package name>/com.google.android.gms.cast.framework.media.MediaNotificationService}
    android.app.ActivityThread$H.handleMessage (ActivityThread.java:1855)
    android.os.Handler.dispatchMessage (Handler.java:106)
    android.os.Looper.loop (Looper.java:214)
    android.app.ActivityThread.main (ActivityThread.java:6986)
    java.lang.reflect.Method.invoke (Method.java)
    com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:494)
    com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1445)

Eu experimentei problemas semelhantes ao criar meu próprio serviço em primeiro plano, mas como isso está na biblioteca de elenco, não temos controle sobre ele.

O receptor Chromecast é tratado por terceiros. Nós estamos usando:

api "com.google.android.gms:play-services-cast:17.0.0"
api "com.google.android.gms:play-services-cast-framework:17.0.0"

Pistas em potencial:

  • Isso está acontecendo no OnePlus, Huawei, Samsung, Google, aparentemente todos os fabricantes (e nível de SO) em números correlacionados à sua participação de mercado.
  • As falhas ocorrem em linhas diferentes para dispositivos diferentes (por exemplo, o acima é o Galaxy S9, o S8 trava na linha 1872), portanto, não são agrupados no Crashlytics. Isso sugere para mim que é um problema no nível do OS / Google Play Services.
  • As falhas acontecem em todas as versões ativas do aplicativo, começando ao mesmo tempo.
  • Os acidentes vêm ocorrendo em números baixos há meses, mas de repente aumentaram no fim de semana e não mostram sinais de desaceleração.

2
O mesmo problema está acontecendo para nós também hoje em dia, nossa versão do framework é 17.1.0
— cylon

@cylon Descobrimos que o Chrome v80 foi lançado como estável pouco antes do início de nossas falhas. Talvez isso de alguma forma tenha interferido nos aplicativos receptores?
— JakeSteam

Alguém já encontrou alguma correção?
— casolorz 14/02

Respostas:


5

Parece um problema conhecido :

O problema ocorreu apenas em dispositivos HUAWEI com Android 9: P20 pro, P30 pro, P20 lite, P30, P20, Honor View 10, Mate 20 pro

Transmitir versão do SDK: Android Sender 16.2.0 (verifiquei as notas de versão do Android Sender 17.1.0, mas nenhuma correção de bug)

Aqui está o log de falha do fabric:

Fatal Exception: android.app.RemoteServiceException: Context.startForegroundService() did not then call Service.startForeground(): ServiceRecord{3ac0035 u0 com.google.android.gms.cast.framework.media.MediaNotificationService}
       at android.app.ActivityThread$H.handleMessage + 2126(ActivityThread.java:2126)
       at android.os.Handler.dispatchMessage + 112(Handler.java:112)
       at android.os.Looper.loop + 216(Looper.java:216)
       at android.app.ActivityThread.main + 7625(ActivityThread.java:7625)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run + 524(RuntimeInit.java:524)
       at com.android.internal.os.ZygoteInit.main + 987(ZygoteInit.java:987)

que um engenheiro do Google diz que foi corrigido :

Temos uma correção para isso e que deve ser lançada na próxima versão da biblioteca do cliente Android Cast.

mas eles não sabem quando a correção será lançada :

Até o momento, não temos uma data sólida para a programação do próximo lançamento. Vamos atualizá-lo aqui; caso contrário, verifique aqui https://developers.google.com/cast/docs/release-notes

As notas de versão não mencionam uma correção para isso.

Atualizarei esta resposta se encontrar mais alguma coisa.

Atualizar

Isso está consertado. Veja Anjaneesha resposta .

Atualizar

Existem alguns problemas com 18.0.0. Veja rednaza resposta . Além disso, os comentaristas sobre o problema ainda estão enfrentando falhas nas plataformas Samsung e Huawei , mas com taxas bastante reduzidas. Eu registrei uma nova questão sobre isso.


11
Resposta muito abrangente, obrigado. Tentará atualizar o SDK. Ainda acho realmente bizarro como o problema pode ocorrer repentinamente depois de anos no 17.X.
— JakeSteam

11
Resposta do nosso contato técnico no Google: "A correção do bug de falha está na biblioteca cliente Android Cast SDK v18.0.0, se você atualizar, deve corrigi-lo.". Claro que isso introduz novos problemas !
— JakeSteam

Esse problema ainda está ocorrendo na v18.0.0 e principalmente nos dispositivos Huawei com Android 9. Alguma outra solução?
— Pabi Moloi 28/02


1

Também estamos enfrentando esse problema com sintomas muito semelhantes. Estamos no elenco SDK versão 16.1.2

  • Só acontece no Android 8 e acima. Parece estar vinculado às alterações de execução em segundo plano aqui
  • Também números baixos por meses. Lançado recentemente em todas as versões de aplicativos. Agora, olhando para os números na casa dos milhares.
  • Houve uma atualização dos serviços de reprodução em 11 de fevereiro. Poderia ser vinculado?

O que tentamos (Atualizando para o SDK 18.0.0)

A atualização para a v18.0.0 parece corrigir o problema, conforme relatado por @Anjaneesh . No entanto, o 18.0.0 introduziu mudanças de comportamento em torno da recuperação de dados personalizados. Observamos que os dados personalizados que fornecemos ao mediaInfo do remoteMediaClient (e tentamos recuperar) são anulados quando o aplicativo remetente é desconectado e reconectado. Isso precisará ser protegido se você ainda não estiver!

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.