총 게시물 38,648건, 최근 0 건 안내 RSS 글쓰기
이전글  다음글  목록 글쓰기
[안드로이드]

Service로 TCP 통신 질문입니다.

글쓴이 : 에비츄 날짜 : 2017-05-15 (월) 14:14 조회 : 762
글주소 : http://www.androidside.com/B49/167224
 
  국비교육전문 KG아이티뱅크
노동청선청 우수교육기관, 입문자~전공자 맞춤교육,IT스타강사 직강 최대100%국비
it-bank.pe.kr/
  3D입체영상제작 ETV
3D애니메이션, 모션그래픽, 홍보영상, 기업광고, 입찰제안영상, 전시영상 제작.
www.etv-media.com
  차세대 3D, 쓰리디팩토리
3D 홀로그램, 가상현실(VR), 증강현실(AR), 3D 콘텐츠변환, 무안경 3D
3df.co.kr
신청하기


안드로이드, 자바 그리고 다양한 질문에 대해 성실히 답해드립니다. Q&A Jang


안녕하세요. 
현재 메인 Activity에서 startService(intent); 로 Service를 실행하고 Service를 상속받는 class에서 tcp 통신을 합니다. (background에서 tcp 통신이 계속 이루어져야 하기에 Service로 구현)

onStartCommand에서 소켓연결을 하고 데이터까지 보내지는것까지 확인을 했습니다.

문제는 이제 Service가 죽지 않고 계속 돌고있는지에 대한 테스트와

서버에서 오는 데이터를 캐치해서 메인Activity로 넘겨야하는데, 그걸 못하겠네요..

구글링하면 다양한 방법이 있는것 같은데, 어떠어떠한 방식이 있으며 어떤게 더 효과적인지 알려주시면 감사하겠습니다.

초보라 자세히 알려주시면 더욱 감사하겠습니다 (__)




질문자가 자신의 포인트 5 점을 걸었습니다.
답변하시면 포인트 2을, 답변이 채택되면 포인트 4을 드립니다.

질문답변 게시판에서 궁금한 사항을 해결하셨다면, 애써 답변해주신 분께 잘 되었다고 따뜻한 댓글 한마디 남겨주세요.
그리고 답변해주신 분의 글을 '추천' 해주세요.
추천받으신 분에게 1포인트가, 추천하신 분에게도 1포인트가 적립됩니다. ^^

안사 이쁜이 2017-05-15 (월) 14:14
축하드립니다. ;)
에비츄님은 안사 이쁜이에 당첨되어 1 포인트 지급되었습니다.
OSKiller 2017-05-15 (월) 14:17
소켓통신에 대한 부분은 패스
수신한 데이터를 액티비티로 전달 하는 방법은 몇가지 있는데
1. AIDL로 서비스에 바인딩 해서 callback받는 방법
2. broadcast로 액티비티가 받는 방법
구글링 해보고 맘에 드는 방식으로 개발 하시면 됩니다
댓글주소 추천 0 반대 0
     
     
에비츄 2017-05-15 (월) 17:27
[@OSKiller]
답글 감사합니다. 브로드캐스트를 사용해보려고 하는데 잘 되질 않네요..ㅠ
메인에서 IntentFilter랑 registerReceiver등록하고 서비스에서 데이터를 putExtra해서 sendBroadcast(intent)로 날려보는데 반응이 없네요.. 서버에서 데이터는 스레드안에서 readLine으로 받고 있습니다.. 데이터가 들어오는것은 log 찍혀서 봤구요..
댓글주소 추천 0 반대 0
이전글  다음글  목록 글쓰기

 


Copyright ⓒ www.androidside.com. All rights reserved.
채팅 권한: 글쓰기 1개
2레벨 이상만 대화 가능
공개 채팅: 평일 !(9시 ~ 17시),토,일
안사2 변경사항 보러가기 챗방이 잘 안보이면 크롬에서 접속해주세요
챗방 숨기기 |  챗방 보이기