Não preciso ligar para o número de telefone, só preciso que o discador seja aberto com o número de telefone já exibido. O Intent
que devo usar para conseguir isso?
Não preciso ligar para o número de telefone, só preciso que o discador seja aberto com o número de telefone já exibido. O Intent
que devo usar para conseguir isso?
Duas maneiras de conseguir isso.
1) Precisa iniciar o discador via código, sem a interação do usuário.
Você precisa Action_Dial
,
Use o código abaixo para abrir o Discador com o número especificado
Intent intent = new Intent(Intent.ACTION_DIAL);
intent.setData(Uri.parse("tel:0123456789"));
startActivity(intent);
O prefixo 'tel:' é necessário ; caso contrário, a seguinte exceção será lançada: java.lang.IllegalStateException: Não foi possível executar o método da atividade.
Action_Dial não requer nenhuma permissão.
Se você deseja iniciar a chamada diretamente sem a interação do usuário , você pode usar a ação Intent.ACTION_CALL
. Nesse caso, você deve adicionar a seguinte permissão no seu AndroidManifest.xml:
<uses-permission android:name="android.permission.CALL_PHONE" />
2) Precisa que o usuário clique na sequência Phone_Number e inicie a chamada.
android:autoLink="phone"
Você precisa usar o TextView com a propriedade abaixo.
android: autoLink = "phone" android: linksClickable = "true" uma propriedade textView
Você não precisa usar a intenção ou obter permissão dessa maneira.
Bastante tarde na resposta, mas se você tem um
TextView
número no qual está mostrando o número de telefone, não precisa lidar com nenhuma intenção, basta usar o atributo XMLandroid:autoLink="phone"
e o sistema operacional iniciará automaticamente umaACTION_DIAL
Intenção.fonte
Ok, será uma resposta extremamente tarde para esta pergunta. Mas aqui está apenas uma amostra, se você quiser fazer isso no Kotlin .
Pensei que poderia ajudar alguém.
fonte
Como o @ashishduh mencionado acima, o uso
android:autoLink="phone
também é uma boa solução. Mas esta opção tem uma desvantagem, não funciona com todos os comprimentos de números de telefone. Por exemplo, um número de telefone de 11 números não funcionará com esta opção. A solução é prefixar seus números de telefone com o código do país.Exemplo:
08034448845
não vai funcionarmas
+2348034448845
vaifonte
É assim que você pode abrir o número atribuído à etiqueta EditText diretamente no discador.
fonte
Adicione permissão no manifesto:
Botão Make ou qualquer exemplo de widget:
btnCall
fonte