Como aplicativo WhiteList no modo Doze Android 6.0

Esta pergunta está relacionada ao Android 6.0 Preview 3, que será lançado no final deste mês.

Estou testando algumas coisas no Android 6.0 na pré-visualização 3 do Google no Nexus 5 'hammerhead'.

O novo recurso é o "modo cochilo" - algo como o modo de suspensão profunda quando a rede está desativada e o telefone dorme, apenas o SMS, as chamadas ou as mensagens GCM de alta prioridade podem ativá-lo. Mas, como o WhatsApp - no modo cochilo, ele recebe as mensagens após 2 horas ou mais, dependendo dos temporizadores. Mas há uma lista de aplicativos 'não otimizados' chamados "lista branca", onde você pode adicionar aplicativos manualmente.

Ok, gostaria de encontrar uma maneira de adicionar meu aplicativo programaticamente sem a interação do usuário à "lista de aplicativos da lista branca" que existe no dispositivo nas configurações da bateria.

Tentando usar a reflexão para entrar, descobri:

Dentro do android.os.IDeviceIdleController, existe um método:

resumo público void addPowerSaveWhitelistApp (String packageNameOfApp)

Mas isso é uma interface ... Portanto, não podemos criar uma instância de interface.

Ainda não existe documentação sobre essa interface ou sobre métodos ou qualquer árvore de herança.

Talvez você tenha alguma idéia de onde eu deveria procurar a possibilidade de adicionar programaticamente lá o meu aplicativo?

Existe também um método

público abstrato booleano isPowerSaveWhitelistApp (String packageName)

Que eu acho que deveria ser possível acessar de alguma forma ?! para verificar se o aplicativo existe na Lista Branca e, talvez, no final, solicite ao usuário que o adicione à Lista Branca.

Então, minha pergunta é: alguém de vocês tentou fazer algo com melhor resultado? Porque eu estou preso e acho que é um beco sem saída.

para mais informações:https://newcircle.com/s/post/1739/2015/06/12/diving-into-android-m-doze

questionAnswers(6)

yourAnswerToTheQuestion