고생한 흔적들2013.01.28 15:53

안드로이드에서 기기 고유의 ID 값을 구하는 방법은 아래와 같다.

TelephonyManager tManager = (TelephonyManager)mApp.getSystemService(Context.TELEPHONY_SERVICE);

String uuid = tManager.getDeviceId();

이 값을 이용해서 서버와 통신을 시도 하고 있었는데 자꾸 아무런 반응이 없어서 디버깅을 시도해보니

uuid 가 null 값이여서 서버에서 바로 리턴을 해버리는 상황이었다.

도대체 왜 null로 나온단 말인가... 하고 좌절하며 구글링을 시도해 보았더니

위 방식으로 구할 수 있는 기기 고유의 ID값은 통신용칩이 끼워져 있는 즉 3G or LTE 를 사용하고 있는 폰이여야 한다.

wifi 모델인 넥서스 7으로 디버깅을 하다 보니 발생한 경우였다.

넥서스 7같이 기본 통신칩이 장착되지 않은 기계는 다른 방식으로 기기 고유의 값을 구하여야 한다고 한다. 맥어드레스 라던지...


신고
Posted by cycos83