프로그래밍/안드로이드

[Android] TelephonyManager를 이용한 단말 정보 얻기

1q 2016. 1. 19. 11:16

1. AndroidManifext.xml 에 권한 추가

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

2. Context.getSystemService를 통해 TelephonyManager를 가져옴

- TelephonyManager telephony = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);

3. TelephonyManager의 메소들 중 하나인, getLine1Number() 메소드가 전화번호를 반환



ex) 악성 apk 소스

  public String getMyPhoneNumber()

  {

    try

    {

      StringBuffer localStringBuffer = new StringBuffer();

      localStringBuffer.append("\n My Phone Number : ");

      localStringBuffer.append(((TelephonyManager)GlobalData.getInstance().getContext().getSystemService("phone")).getLine1Number().toString() + "\n\n");

      String str = localStringBuffer.toString();

      return str;

    }

    catch (Exception localException)

    {

      localException.printStackTrace();

    }

    return "\n My Phone Number : ";

  }