주제: 안드로이드에서 로그인 관련 기능 중에 핸드폰 고유값을 서버에 전송할 수 있을지 알아 보았다.
분석: 아래와 같은 코드로 핸드폰 고유의 값 3가지를 가져올수 있다.
TelephonyManager telephonyManager = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
// IMEI
Log.d("kth", "telephonyManager.getDeviceId(); " + telephonyManager.getDeviceId());
// 핸드폰 번호
Log.d("kth", "telephonyManager.getLine1Number(); " + telephonyManager.getLine1Number());
// UDID
String deviceId= Secure.getString(G.mainactivity.getContentResolver(), Secure.ANDROID_ID);
Log.d("kth", "deviceId: " + deviceId);
결론: 위에 사용 되는 코드는 모두 서버로 전송하면 안된다.
[테스트 내역]
1. IMEI 수집시에 압수수색 http://www.asiae.co.kr/news/view.htm?idxno=2010083114402683628
md5 암호화해도 불법.
2. 폰 번호 수집 불법
http://lab.gamecodi.com/board/zboard.php?id=GAMECODILAB_QnA_etc&page=1&sn1=&divpage=1&sn=off&ss=on&sc=on&select_arrange=headnum&desc=asc&no=3188
3. 다비이스 고유값 (UDID)
애플에서 UDID 값 수집시 마켓 등록 거절.
다른방법 : GCM에서 생성해준 디바이스key 값을 이용하는 방법으로 선택.
단, 어플을 지우고 새로 받으면 디바이스 key 값을 새로 받기 때문에 주의해야 한다.
'Android > 개발팁' 카테고리의 다른 글
android spinner onitemselected 최초에 실행되는 문제 (0) | 2014.12.03 |
---|---|
volley post get 방법 (0) | 2014.12.03 |
Android 에뮬레이터 웹브라이저에서 localhost 입력 (0) | 2013.12.16 |
태블릿 분기하기 (0) | 2013.10.08 |
Gradient buttons (0) | 2013.08.22 |