티스토리 뷰
Stack Overflow에 자주 검색, 등록되는 문제들과 제가 개발 중 찾아 본 문제들 중에서 나중에도 찾아 볼 것 같은 문제들을 정리하고 있습니다.
Stack Overflow에서 가장 먼저 확인하게 되는 가장 높은 점수를 받은 Solution과 현 시점에 도움이 될 수 있는 가장 최근에 업데이트(최소 점수 확보)된 Solution을 각각 정리하였습니다.
아래 word cloud를 통해 이번 포스팅의 주요 키워드를 미리 확인하세요.
How do I get the dialer to open with phone number displayed?
전화 걸기 앱에서 특정 전화번호가 표시되도록 하려면 어떻게 하나요?
문제 내용
I don't need to call the phone number, I just need the dialer to open with the phone number already displayed. What Intent
should I use to achieve this?
전화를 걸 필요는 없이, 전화 번호가 이미 표시된 상태에서 다이얼러를 열기만 하면 됩니다. 이를 위해 어떤 Intent를 사용해야 하나요?
높은 점수를 받은 Solution
Two ways to achieve it.
두 가지 방법이 있습니다.
1) Need to start the dialer via code, without user interaction.
1. 사용자 상호작용 없이 코드로 다이얼러를 시작해야합니다.
You need Action_Dial
,
"Action_Dial"이 필요합니다.
use below code it will open Dialer with number specified
아래 코드를 사용하면 지정된 전화번호와 함께 다이얼러가 열립니다.
Intent intent = new Intent(Intent.ACTION_DIAL);
intent.setData(Uri.parse("tel:0123456789"));
startActivity(intent);
The 'tel:' prefix is required, otherwhise the following exception will be thrown: java.lang.IllegalStateException: Could not execute method of the activity.
'tel:' 접두어가 필요하며, 그렇지 않으면 다음 예외가 발생합니다: java.lang.IllegalStateException: Could not execute method of the activity.
Action_Dial doesn't require any permission.
Action_Dial은 어떤 권한(permission)도 필요하지 않습니다.
If you want to initiate the call directly without user's interaction , You can use action Intent.ACTION_CALL
. In this case, you must add the following permission in your AndroidManifest.xml:
사용자의 상호작용 없이 직접 전화를 걸고 싶은 경우, Intent.ACTION_CALL을 사용할 수 있습니다. 이 경우, AndroidManifest.xml에 다음 권한을 추가해야 합니다.
<uses-permission android:name="android.permission.CALL_PHONE" />
2) Need user to click on Phone_Number string and start the call.
2. 사용자가 전화번호 문자열을 클릭하고 전화를 거는 방법입니다.
android:autoLink="phone"
You need to use TextView with below property.
아래 속성을 가진 TextView를 사용해야 합니다.
android:autoLink="phone" android:linksClickable="true" a textView property
아래와 같은 속성을 가진 TextView를 사용해야 합니다.
android:autoLink="phone"
android:linksClickable="true"
You don't need to use intent or to get permission via this way.
이 방법으로는 인텐트를 사용하거나 권한을 얻을 필요가 없습니다.
가장 최근 달린 Solution
Okay, it is going to be extremely late answer to this question. But here is just one sample if you want to do it in Kotlin.
알겠습니다. 이 질문에 대한 답변을 하는 것은 매우 늦었지만, Kotlin으로 수행하는 예시를 하나 드리겠습니다.
val intent = Intent(Intent.ACTION_DIAL)
intent.data = Uri.parse("tel:<number>")
startActivity(intent)
Thought it might help someone.
혹시 도움이 될까하여 작성해보았습니다.
출처 : https://stackoverflow.com/questions/11699819/how-do-i-get-the-dialer-to-open-with-phone-number-displayed
'개발 > 안드로이드' 카테고리의 다른 글
Android에서 화면 회전 방지하기 (0) | 2023.01.20 |
---|---|
Parcelable encountered IOException 오류 해결하기 (0) | 2023.01.19 |
ArrayList를 SharedPreferences에 저장하기 (0) | 2023.01.17 |
Android Fragment 에서 뒤로 가기 버튼 처리하기 (0) | 2023.01.16 |
Android에서 URI Builder 사용 또는 변수가 있는 URL 생성 (0) | 2023.01.15 |