Desativar a vibração para a notificação 'Fazer login na rede WiFi'


17

Desde a atualização do Android 6.0 no Nexus 5, sempre que recebo a notificação 'Entrar na rede WiFi', o telefone vibra. Alguma idéia de onde posso desativar isso enquanto mantém a vibração de chamadas, SMS, mensagens do WhatsApp etc.?


4
Estou sofrendo exatamente com o mesmo problema. Pesquisei bastante e parece ser um novo problema com a v6.0. Muito, muito chato.
Db #

1
Nenhuma das correções sugeridas abaixo funciona para mim. Eu uso o modo Prioridade para o uso pretendido (por exemplo, quando estou ocupado ou dormindo); Não quero meu telefone no modo prioritário o tempo todo. E nenhuma das outras correções parece realmente funcionar (e a resposta de Andrew T parece indicar o porquê). Existe uma correção para uma ROM com ações? Envolvendo um módulo Xposed? Será corrigido nas versões posteriores do Android?
Znt

Respostas:


6

Existe uma solução alternativa que envolve o modo Não perturbe apenas a prioridade .

Para simplificar, você deve usar apenas Prioridade (em Configurações rápidas - Não perturbe ), pois possui uma configuração por aplicativo para alerta de notificação que pode substituir a configuração padrão do sistema. O modo somente prioridade ainda mostrará todas as notificações. No entanto, apenas as notificações prioritárias serão alertadas (som, vibração e luz LED).

A idéia é tratar todas as notificações como prioritárias (em Configurações - Som e notificação - Notificações de aplicativos - [nome do aplicativo] - Tratar como prioridade), exceto a notificação do portal cativo, que está no aplicativo Android System (por padrão, os aplicativos do sistema não estão listados Você precisa marcar Mostrar sistema no menu excedente. Deixe este aplicativo como não prioritário, mas não se esqueça dos demais aplicativos do sistema).

No entanto, existem algumas desvantagens que você pode considerar primeiro antes de usar esta solução alternativa:

  1. Você sacrifica o uso pretendido do modo Somente prioridade, apenas deixa o Silêncio total como a única opção (no entanto, se você nunca pretende usar esse recurso, terá sorte porque poderá utilizá-lo).
  2. Se você tiver muitos aplicativos instalados, é muito tedioso definir todos os aplicativos para tratar suas notificações como prioritárias (talvez um script possa ajudar ...). Além disso, toda vez que você instala um novo aplicativo, não se esqueça de tratar a notificação como prioritária (a menos que não se importe com o alerta).
  3. Você não receberá nenhum alerta para todas as notificações do sistema Android (é necessário experimentar isso, pois não sei quais notificações são consideradas pelo sistema Android).

5

TL; DR

Se você ainda deseja ter vibração em todas as notificações, exceto no portal cativo (esse problema em particular) , receio que não possa .

É como o dbasch mencionado no comentário , que a vibração (na verdade, o próprio alerta de notificação ) foi adicionada ao Marshmallow.


Detalhes técnicos

Quando o Android detecta que o Wi-Fi precisa fazer login no portal cativo, como você já percebeu, ele cria uma notificação. É feito por setProvNotificationVisibleIntent()função em ConnectivityService.

Mostrar ou ocultar notificações de provisionamento de rede.

Utilizamos notificações para dois propósitos: notificar que uma rede requer login ( NotificationType.SIGN_IN) ou notificar que uma rede não tem acesso à Internet ( NotificationType.NO_INTERNET). Exibimos no máximo uma notificação por ID; portanto, em uma rede específica, podemos exibir o tipo de notificação que foi solicitado mais recentemente. Por exemplo, se um portal cativo falhar em responder alguns segundos após a conexão, poderemos primeiro exibir NO_INTERNETe, quando a verificação do portal cativo for concluída, será exibida SIGN_IN.

O código relevante para o alerta de notificação usado no Android 6.0 Marshmallow :

Notification notification = new Notification.Builder(mContext)
    ...
    .setDefaults(Notification.DEFAULT_ALL)
    ...

Observe que Notification.DEFAULT_ALL" usará todos os valores padrão (onde aplicável) ", o que significa que depende da configuração de notificação do seu sistema (som, vibração e luz do LED).

Comparado com o Android 5.x Lollipop , o código é:

Notification notification = new Notification();
...

Nem mais nem menos. Esse é o código relevante. new Notification()irá " construir um Notificationobjeto com valores padrão ". Embora pareça que não há alteração no significado, observe que defaultsnão está definido / inicializado para Notification.DEFAULT_ALL(valor: -1). Em vez disso, como não há inicialização, ele será padronizado como 0, o que não é um alerta .

Se é um bug ignorado pelo Google que foi corrigido no Marshmallow ou não, eu não sei. Além disso, essa é a razão pela qual não há alerta no Android Lollipop, mas agora existe no Android Marshmallow.


"Você não pode". Aposto que você pode com um módulo de Xposed (ou pelo menos alguns leitura preliminar me faz pensar isso), embora um pode ter que escrevê-lo a si mesmo ...
ZNT

1

A única maneira que encontrei para me livrar dessa vibração irritante é desativar completamente a notificação 'disponível wifi'. Para fazer isso, vá para configuração-> wifi -> toque nos três pontos verticais -> vá para 'configurações avançadas' e desative as notificações para redes wifi acessíveis ao público. Esperando por uma correção, acho que é a única solução e uma perda não tão ruim para desativá-los, sempre os achei inúteis o suficiente.


3
Obrigado pela sua resposta. No entanto, isso parece não funcionar, ainda exibe uma notificação e vibra mesmo após a desativação da opção 'Notificação de rede'.
Ritz

1
Essa correção também não funciona no meu Nexus 5.
Db #

Eu tentei isso no meu Moto X Pure e também não funciona lá.
Nat Kuhn

Nem na minha moto e segunda geração
Andy Clark

1

Configurações> Aplicativos> Google Connectivity Services> Notificações> Bloquear os desativa totalmente.


Obrigado (supondo que isso funcione)! Agora eu só preciso de uma maneira de lembrar que eu bloqueei isso quando eles corrigi-lo ...
Nat Kuhn

Infelizmente, essa suposição estava errada ... não funcionou no meu Moto X Pure
Nat Kuhn

0

Essa notificação é iniciada pelo sistema Android ( android). Você pode usar os aplicativos para negar ao sistema Android a permissão para vibrar o dispositivo em qualquer situação. Desde que você tenha configurado o no PC, faça:

adb shell appops set android VIBRATE deny

Tente conectar-se a um Wi-Fi sem acesso à Internet. Você ainda receberia essa notificação, mas sem vibração. Se você também pretende ocultar essa notificação, pode seguir o restante das respostas postadas aqui ou neste site.

Para reverter as alterações, faça:

adb shell appops set android VIBRATE allow

A vibração para chamadas é iniciada pelo aplicativo Dialer; para SMS, seria o aplicativo SMS padrão; para mensagens do WhatsApp, é o mesmo aplicativo, para que não sejam afetados. Pode haver consequências imprevistas desse comando que eu não conheço, então, deixe-me saber sobre eles por meio de comentários.

Nota: esta solução foi testada em uma versão não oficial do CM13.

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.