De repente, o meu Samsung Galaxy S alega não suportar arquivos mp3 (o telefone ficou ocioso por algumas horas, eu não toquei em nada). Arquivos Ogg, no entanto, ainda são reproduzidos sem problemas. Quando isso acontece, nenhum aplicativo pode reproduzir arquivos mp3, por exemplo, meu toque personalizado não é mais reproduzido (apenas vibra como se estivesse mudo). Uma reinicialização do telefone corrige o problema, mas dentro de 3-4 dias o problema volta. Não faz diferença se os arquivos são armazenados no cartão SD interno ou externo.
Isso também afeta a reprodução do vídeo, mas não tenho certeza se isso acontece ao mesmo tempo ou é independente um do outro. O aplicativo do youtube não pode mais iniciar vídeos (problema de reprodução desconhecido), e o aplicativo player de vídeo reivindica todos os arquivos de vídeo como não suportados. Suponho que o problema talvez não seja a reprodução de vídeo, mas o codec de áudio usado no vídeo (mp3).
Alguma idéia de como corrigir isso ou depurar isso? Não quero reiniciar meu telefone a cada dois dias - são necessários 2-3 minutos para fazer isso e um telefone deve funcionar.
Eu apliquei o firmware 2.2.1 recentemente e isso só parecia piorar o problema. Eu tinha isso antes da 2.2.1 (com 2.2), mas apenas muito raramente.
Estou curioso para saber se o TitaniumBackup pode ser o culpado, pois o agendador de backup parece parar os processos às vezes. Talvez outras pessoas com esse problema também usem TitaniumBackups agendados? A dica era que, desde a atualização para a 2.2.1, eu também atualizei para a versão licenciada do TitaniumBackup e fiz backups diários agendados. Mas isso pode ser apenas coincidência. O que contradiz essa teoria: os backups são agendados à noite, mas a última vez que vi esse problema aconteceu durante o dia - o mp3 funcionou pela manhã e falhou à tarde. O telefone ficou inativo durante o período em que "decidiu" não reproduzir mais mp3.
Olhando para os fóruns (encontrei apenas alguns acessos no Google), pessoas com os mesmos problemas sugerem simplesmente reiniciar o telefone - mas isso não é uma solução. Ou eles sugerem que o telefone seja devolvido para substituição - e adivinhe: ele não corrigiu o problema das pessoas que enfrentam esse problema. Portanto, sugiro que não seja um problema de hardware (nem relacionado a cartões SD nem ao próprio telefone).
fonte
Respostas:
Eu acho que encontrei o problema.
Como o bjoernz disse, algum aplicativo está criando muitos objetos da classe MediaPlayer e não é liberado depois. Então, abri um shell adb , tornei-me root ( su ) e encontrei o PID (ID do processo) do mediaserver, usando o comando:
O PID do servidor de mídia, no meu caso, é: 84
Em seguida, listei todos os recursos usados por esse PID com o comando:
E obtive o seguinte resultado:
Portanto, ficou fácil identificar que o aplicativo oficial do twitter ( com.twitter.android-1.apk ) era o problema. Em seguida, removi o aplicativo do twitter e instalei o TweetDeck e o problema desapareceu desde a semana passada.
Espero que isso possa ajudá-lo.
[]
fonte
Um último recurso é sempre uma redefinição de fábrica, que deve corrigir esse problema. Você também pode dar uma olhada na saída do logcat, talvez isso lhe dê uma dica sobre a causa do problema.
fonte
Finalmente tive a chance de olhar o logcat enquanto o problema estava ocorrendo. A mensagem de erro diz:
De acordo com este fórum, "é causado por ter muitos objetos MediaPlayer ativos ao mesmo tempo". Infelizmente ainda não encontrei uma correção. A única solução alternativa conhecida parece estar sendo reiniciada.
Ainda não tenho certeza de qual aplicativo (ou combinação de aplicativos) reproduz o erro de maneira confiável.
Edit : Eu acho que qualquer aplicativo que use a classe MediaPlayer pode causar o problema. Esses aplicativos provavelmente nunca atingem um estado em que chamam MediaPlayer.release () . Talvez seja necessário entrar em contato com os fornecedores de aplicativos que usam o MediaPlayer, para que eles chamem release () .
Minha pesquisa superficial não levou a uma solução que solucionasse o problema sem uma reinicialização.
Editar 2: atualizei para o Android 2.3 (Gingerbread) e, infelizmente, esse problema ainda persiste.
Algumas mensagens de logcat em torno do erro:
fonte
Eu tenho o mesmo problema aqui, usando o Galaxy S com Android 2.3.3.
Observando o log, podemos ver o PID (ID do processo) usado pelo PlayerDriver.
Então, eu matei o processo PlayerDriver e ele foi corrigido.
Para fazer isso, você precisa fazer o root no seu dispositivo e conectar-se ao adb como root. Ex.:
su
Da próxima vez, tentarei identificar quais arquivos e canais o processo está usando através do comando lsof
Espero que esta ajuda.
fonte
O mesmo problema está na minha galáxia s. Percebi que, se eu uso o Google Listen e tenho alguma fila, o mp3 para de tocar. Depois de limpar a fila, estava ficando bom! Mas ... Parece que o Adobe Flash também influencia na reprodução de mídia. Se eu usá-los, qualquer reprodução de mídia falhará antes de reiniciar. Talvez 2.3 resolva o problema. Quase cansado de encontrar a solução para 2.2 no Galaxy S
fonte
Sinto os mesmos problemas e não consigo obter uma causa consistente. Depois de reiniciar o telefone, não vejo o problema novamente por mais 12 a 24 horas. Como uso músicas personalizadas como despertador, adotei o hábito ou reinicializei o telefone antes de dormir. Isso causou muitos dias de atraso antes que eu descobrisse o que estava acontecendo.
Comecei com uma nova instalação de fábrica. Testei por alguns dias sem problemas. Comece a instalar programas um por um, sem problemas. Eventualmente, comecei a usar Widgets, sem problemas. Eu instalei o Launcher Pro sem problemas.
Mas agora os problemas começaram novamente. Desinstalei o Launcher Pro completamente sem sucesso. Eu removi todos os meus widgets, que pareciam funcionar. Adicionei-os de volta um por um e não parecia ter nenhum problema. Mas o problema voltou. Durante o período de duas semanas, não consegui isolar um widget que estava causando o problema; portanto, excluí todos os widgets.
Tenho toques personalizados para meus SMS, notificações, G-talk, Gmail e toques. Quando esse problema ocorre, não consigo nem jogar meu correio de voz, muito menos qualquer outra coisa.
Eu uso um programa chamado "Soundhound" para descobrir músicas que nunca ouvi antes. Eu acho que pode estar relacionado. Por outro lado, eu também uso o Advanced Task Killer, mas mesmo quando eu o tinha instalado antes, não havia problemas. Acho que quando uso o Soundhound, ele está desencadeando algum tipo de reação em cadeia estranha que, eventualmente - horas depois - faz com que meu telefone tenha esse erro.
Não sei o suficiente sobre os logs ou como acessá-los para depurar o telefone de verdade, mas sei que muitas pessoas tiveram esse problema e parece não haver solução. Enquanto isso, desinstalei o Soundhound e estou verificando se ainda tenho o problema.
fonte
Percebi esse problema na minha galáxia, demorou um pouco para se juntar, mas parecia ter começado quando comecei a usar gerenciadores de tarefas de terceiros. Isso aconteceu com o avançado matador de tarefas e cão de guarda instalado.
Voltei a usar o gerenciador de tarefas nativo e o problema parece ter desaparecido ... Não ocorreu na semana passada. Estou executando o 2.2.1.
O que eu achava mais estranho era que acontecia nos dias em que eu nem usava o gerenciador de tarefas, apenas a mera presença causa o problema ...
Não tenho certeza do motivo técnico por trás disso, mas não se importe ... O Taskgroup nativo está bem.
Espero que isso ajude o resto de vocês.
fonte
Você já tentou testar arquivos de mídia individuais que causam o problema?
Muitas luas atrás, tive um problema em que certos arquivos corromperiam o banco de dados de músicas e eventualmente causariam problemas para toda a biblioteca. Isso é muito hipotético, pois minha experiência não estava em um dispositivo Android e meu Galaxy S funciona muito bem. Apesar disso, pensei que você poderia tentar carregar apenas um pequeno subconjunto de sua mídia e verificar se ainda está com o problema. Não parece um problema de codec e talvez o scanner de mídia limpe o banco de dados quando você reiniciar o telefone. Desculpe, não tenho uma resposta melhor.
fonte