안녕하세요, 군복무 중 틈틈히 개발을 하고 있는 학생입니다!
기존에 만들었던 어플에 다른 폰으로 데이터를 전송하는 기능을 추가하려합니다.
폰1에서 전화번호를 선택하고 전송을 누르면 데이터가 폰2로 도착하고 어플안에 리스트에 표시가 되게하고 싶습니다.
현재 군대에 있다보니, 아직 서적을 가지고 있지 못하네요. 인터넷으로 찾아보고 있지만, 제가 구현하려고 하는 것에 필요한게 무엇인지 조금 혼란스럽네요^^;
키워드라도 알려주시면 감사하겠습니다!
Q-1 > 전화번호를 가지고 ip를 알아내서 통신하는 원리인가요? 간단하게 원리좀 설명부탁드리겠습니다 ^^;;
Q-2 > C2DM, 서버 등등 여러가지 개념이 나오는데, 무엇무엇을 공부해야할까요 ^^;?
Q-3 > 중간에 서버를 두고 하게된다면, 호스팅비용을 제외하고 망공급에게 지불해야하는 비용이 있는건가요?
즐거운하루되세요 :)
반갑습니다 :)
중간에 서버를 두시고 핸드폰번호로 해당 기기의 유니크값(push token 등)을 이용해서 통신하시면 됩니다.
TelephonyManager tm = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);
tm.getDeviceId();
등으로 기기 유니크 ID와 핸드폰 번호를 서버로 보내 저장하시구요.
(PUSH 서비스를 이용하시려면 Google c2dm registration ID 를 먼저 받아야합니다.)
---------------------------------------------------------------------------------
sender 디바이스에서 전화번호를 선택하면 서버에서는 등록된 전화번호가 있는지 확인하고 등록되어있는 전화번호면
파일 업로드 기능으로 업로드를 받습니다.
업로드가 완료되면 해당 전화번호의 push token을 이용해서 정해진 규칙으로 이루어진 푸쉬메세지를 전송합니다.
(보낸이, 제목, 웹상의 파일경로 등)
---------------------------------------------------------------------------------
receiver 디바이스에서는 푸쉬메세지가 도착하면 해당 푸쉬 메세지를 파싱해서 필요한 정보를 얻어냅니다.
---------------------------------------------------------------------------------
푸쉬를 이용하지 않는다면... 백그라운드에서 서비스가 계속돌아가면서 주기적으로 서버에서 자기한테 업데이트된 정보가 있는지 확인해야합니다... 배터리랑 네트워크 사용을 계속 하겠죠... 삭제1순위 어플 되버립니다. ㅋㅋㅋㅋ




Q-1 > 전화번호를 가지고 ip를 알아내서 통신하는 원리인가요? 간단하게 원리좀 설명부탁드리겠습니다 ^^;;
전화번호가지고 ip알아 낼수 없어요. Q-3과 같이 서버를 두고 통신해야 합니다.
Q-2 > C2DM, 서버 등등 여러가지 개념이 나오는데, 무엇무엇을 공부해야할까요 ^^;?
C2DM은 메시지 전송시 알림처리 해주는 푸쉬서버로 알고있고요 검색해보세요.
알림 기능없으면 C2DM은 필요없으며 현재 서버 공부하셔야 합니다.
Q-3 > 중간에 서버를 두고 하게된다면, 호스팅비용을 제외하고 망공급에게 지불해야하는 비용이 있는건가요?
호스팅비용만 있으면 됩니다. 그렇게 많은 접속자 처리를 위한게 아니라면 개인피씨를 서버로 돌리는 경우도있습니다.