2013-11-14 6 views
0

나는이 어플리케이션을 내 어플리케이션에 추가하기 위해 자신의 휴대폰 번호를 얻고 싶습니다.android 4.1.2에서 휴대 전화 번호를 얻는 방법?

나는이 질문에 대한 찾고 있어요,

코드는 에뮬레이터하지만 빈 장치 쇼에 맞습니다.

public String getMyPhoneNumber() 
    { 
     return ((TelephonyManager) getSystemService(TELEPHONY_SERVICE)) 
       .getLine1Number(); 
    } 

과 :

<uses-permission android:name="android.permission.READ_PHONE_STATE"/> 

그러나 그것은 빈 값을 반환합니다. 전화 번호 세부 정보는 어떻게 가져올 수 있습니까?

답변

0

귀하의 코드를 잘해야한다, 그러나 당신은 필요 SIM 카드에 전화 번호을 넣으십시오. 또한 자동 인용 부호로 숫자가 SIM 카드에 저장되어 있지 않으면 빈 문자열이 표시됩니다.

EDIT : 또한 Pontus Backlund, 좋은 정보가 있습니다.

1

사용하는 방법이 SDK의 유일한 부분이며이를 수행하는 SIM 카드에 저장되어있는 장치에서만 작동하며 일부 통신 업체 만 수행합니다. 다른 모든 이동 통신사의 경우 전화 번호를 수동으로 입력하도록 요청해야합니다. 전화 번호는 검색 할 수있는 위치의 기기에 저장되지 않기 때문입니다.

-1

내 휴대 전화 번호를 알 수없는 경우 휴대 전화 번호를 알 수없는 경우 휴대 전화 번호로 설정으로 이동합니다. 일부 휴대 전화 네트워크가 휴대 전화 번호를 제공하지 않기 때문에 ..

내 휴대 전화 번호는 숫자가있는 경우

유 코드를 다음을 통해 모바일을 얻을 수

TelephonyManager tManager = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE); 
    phoneNumber = tManager.getLine1Number(); 
1

응답에서 : 전화 번호가 물리적으로 모든 SIM에 저장되지 않기 때문에 Programmatically obtain the phone number of the Android phone

"이 문제에 대한 어떠한 보장 해결책은 없다 - 카드, 또는 방송 네트워크에서 전화로. 이는 실제 주소 확인이 필요한 일부 국가에서는 특히 그렇습니다. 번호 할당은 이후에만 발생합니다. 전화 번호 할당은 네트워크에서 발생하며 SIM 카드 나 기기를 변경하지 않고 변경할 수 있습니다 (예 : 이식 방법 지원).

나는이 고통을 알고 있지만, 대부분의 가능성이 가장 좋은 방법은 한 번 그/그녀의 전화 번호를 입력하고 저장하는 사용자에게 물어 그냥. "

관련 문제