Android 16

안드로이드 WebRTC 시작하기 -3

p2p에서의 다음과 같은 시나리오를 생각해 봅시다. 처음에 peer 연결과 offer SDP를 생성합니다. 이 offer에는 호출하는 peer에 대한 데이터가 들어 있으며 peer의 코덱 및 기타 엔터티를 식별하는데 사용됩니다.그런 다음 이 offer는 호출 peer에 "Local Description"으로 저장되고 일부 신호 메커니즘을 통해 호출 수신자에게 전송됩니다. 일반적으로 시스템의 대부분은 신호 매체로 웹 소켓을 사용하며 사용 및 요구 사항에 따라 다를 수 있습니다.수신자 측이 offer를 받아 "Remote Description"으로 저장하고 해당 offer에 대한 Answer SDP를 만듭니다. 이 Answer SDP는 호출자의 offer SDP와 비슷하지만 해당 피어의 세부정보를 가지고 있..

Android 2018.12.25

안드로이드 WebRtc 시작하기 -2

이번에는 PeerConnection의 작동 방식과 Android에서의 구현 방법에 대해 자세히 살펴 보겠습니다. 첫째, WebRTC는 피어 - 투 - 피어 연결 (또는 단순히 P2P)을 기반으로합니다. 그렇다면 P2P는 무엇일까요?위키 피 디아에 P2P에 대해 설명되어 있습니다. 피어 - 투 - 피어 (P2P) 컴퓨팅 또는 네트워킹은 피어간에 작업 또는 작업 부하를 분할하는 분산 응용 프로그램 아키텍처입니다. 피어는 동등하게 권한이 부여되며 응용 프로그램에서 동일한 권한을 가진 참가자입니다. 이들은 피어 투 피어 노드 네트워크를 형성한다고합니다. 따라서 WebRTC를 사용하면 외부 서버 컴퓨터없이 오디오 / 비디오 스트림을 다른 피어와 직접 공유 할 수 있습니다. 인프라에서 대량의 오디오 / 비디오 데이..

Android 2018.12.25

안드로이드 WebRTC 시작하기

이 글을 작성하게 된 주된 이유는 적절한 가이드가 없기 때문에 작성하게 되었다. 선행조건 1. 컴파일 된 WebRTC 원시 코드가 필요. 여기에서 참고.2. 안드로이드 스튜디오. Update: arr 파일을 여기에서 다운 받을수 있습니다. 첫번째, WebRTC의존성을 build.gradle파일에 추가 이제 카메라에서 비디오를 가져와서 화면에 표시하는 방법을 알아보겠습니다. (WebRTC apis 사용). 비디오 스트림을 카메라로부터 가져와 뷰에 표시하는 단계는 아래와 같습니다. PeerConnectionFactory를 생성하고 초기화장치의 카메라를 사용하는 VideoCapturer 인스턴스 생성Captuer로 부터 VideoSource를 생성source로 부터 ViedoTrack 생성SurfaceView..

Android 2018.12.24

AsyncTask를 사용해보자

AsyncTask란?안드로이드에서는 AsyncTask라는 클래스를 상속받아 사용할 수 있습니다.왜 AsyncTask를 사용해야 할까요? 안드로이드는 UI를 담당하는 메인 쓰레드가 존재하는데, 이 쓰레드는 우리가 함부로 접근이 불가능하게 막아뒀습니다.그런데 UI변경은 메인 쓰레드에서만 가능하고, 우리가 만든 쓰레드에서는 화면을 바꾸는 어떠한 일도 할 수 없습니다. 이러한 이유로 안드로이드는 Background 작업을 할 수 있도록 AsyncTask를 지원합니다.AsyncTask는 쓰레드와 핸들러를 통해 UI를 처리했던 것을 한번에 작업할 수 있도록 지원해줍니다. 즉, UI작업을 위해 만들어야 했던 Handler가 필요없어지는 겁니다.개발할 때의 부담을 덜어줍니다.또한 백그라운드 작업을 하면서 진행 상황을 ..

Android 2018.11.20

HttpURLConnection으로 웹서버 통신하기

1. 안드로이드의 서버 통신 안드로이드는 서버와 통신하기 위한 방법으로는 HTTP통신과 Soket통신이 있다. 오늘 다룰 내용은 HTTP통신으로 URL 접속을 통해 데이터를 읽어오는 방법이다. 우리는 주로 DB에 존재하는 데이터를 가져오기 위해 서버 통신을 한다. 하지만 안드로이드의 특성상 외부 DB에 직접 접근할 수 가 없도록 되어있어 중간 매체인 WEB을 활용해야한다. 이해를 위해 그림으로 쉽게 표현했다. [그림 1] 안드로이드와 WEB, 그리고 DB 통신 과정 안드로이드 통신은 보통 위와 같이 이뤄지며 본 포스팅에서는 'ANDROID-WEB'의 통신 방법에 대해 다룰 것이다. 우선 막연하게 WEB이라고만 하면 정확히 어떤 것을 말하는 것인지 헷갈릴 수 있다. 여기서 말하는 WEB은 HTML, JSP..

Android 2018.11.11

HTTP 통신 VS Socket 통신

단말기와 웹서버와 통신 방식은 다음과 같이 크게 두 가지로 구분할 수 있습니다. ① HTTP 통신 ② Socket 통신 HTTP와 Socket의 가장 큰 차이점은 접속(Connection)을 유지하는지의 여부입니다. 물론 파일 전송만을 전문으로 처리하는 FTP도 있지만 이것은 HTTP를 확장한 개념이므로 HTTP에 포함시키겠습니다. 1. HTTP 통신 HTTP 통신은 웹브라우저에 정보를 표시하는 것과 같이 클라이언트의 요청이 있을 때 서버가 해당 페이지에 대한 자료를 전송하고 곧바로 연결을 끊는 방식입니다. 현재 여러분이 제 블로그를 보고 있지만 맨 처음 이 페이지가 보여지는 순간만 서버와 연결되고 현재는 서버와 접속이 끊어진 상태입니다. 이 상태에서 F5 키를 눌러 새로고침을 하거나 다른 페이지로 이동..

Android 2018.11.11