Para dar suporte ao meu fone de ouvido bluetooth, meu desejo era ativar o bluetooth quando estou no aplicativo de contatos OU em uma chamada. Eu poderia fazer isso apenas durante uma ligação, mas não consigo garantir que meu fone de ouvido esteja conectado antes que a outra parte atenda.
Nenhuma das soluções já postadas funcionaria. Definir% BluetoothNeeded ativado quando em Contatos ou na chamada significa que, quando uma chamada é iniciada, ele ativa% BlueToothNeeded, mas quando Contatos se torna o plano de fundo para estar em uma chamada, ele desativa% BlueToothNeeded e o Bluetooth é desligado. Usando a operação inversa, desative o Bluetooth quando NÃO está em Contatos E NÃO em chamada, mas ative o Bluetooth como uma tarefa de saída quase funciona, mas aparentemente Tasker percebe o breve período em que Contatos perde o status de primeiro plano e a chamada ainda não foi iniciada e ativa o Bluetooth. fora.
Então, aqui está o que funcionou para mim, com base neste blog :
- Crie uma tarefa chamada
Dummy
com uma ação deTasks > Wait > 1ms
- Crie um perfil chamado
stateInCall
com uma condição de State > Phone > Call > Type: Any
. Vincule-o à Dummy
tarefa.
- Crie um perfil chamado
stateInContacts
com uma condição de State > Application > Contacts
. Vincule-o à Dummy
tarefa.
- Crie um perfil chamado
Bluetooth Needed
com uma condição de State > Variable > Variable Value
. Defina Nome como %PACTIVE
, Op como Matches
e Valor como *,stateInCall,*|*,stateInContacts,*
. De acordo com os documentos da Tasker, o% PACTIVE contém uma lista separada por vírgula de perfis ativos, onde a lista também começa e termina com uma vírgula para facilitar a correspondência. Vincule esse perfil a uma tarefa chamada Bluetooth On
que ativa o bluetooth usando a Net > Bluetooth > Set: On
ação.
- Crie uma tarefa chamada
Conditional Bluetooth Off
com as seguintes ações:
- Tarefa> Aguarde> 10 segundos
- Tarefa> Se>
%PACTIVE
não corresponde*,stateInCall,*|*,stateInContacts,*
- Rede> Bluetooth> Definir: Desativado
- Tarefa> Terminar se
- Mantenha pressionado o
Bluetooth Needed
perfil e escolha Properties
. Desmarque Restore Settings
.
- Pressione rapidamente o
Bluetooth Needed
perfil até que a Bluetooth On
tarefa seja exibida abaixo, na coluna da direita. Mantenha pressionado Bluetooth On
e escolha Add Exit Task
, depois escolha Conditional Bluetooth Off
.
Conditional Bluetooth Off
esperará 10 segundos antes de verificar novamente que nem stateInCall
nem stateInContacts
são verdadeiras; nesse ponto, desligará o bluetooth. Caso contrário, ele deixa o bluetooth ativado e, quando ambos stateInCall
e stateInContacts
sai mais tarde, espera 10 segundos e verifica novamente.