Mobile/Android(JAVA) (6) 썸네일형 리스트형 [Android] Android 통신 방법 앱에서 가장 많이 수행하는 처리 중 하나는 서버에 데이터를 요청하고 받아온 데이터를 클라이언트의 화면에 표시하는 것이다. 이때 클라이언트와 서버가 통신하는 방식은 크게 소켓통신과 HTTP통신 두 가지로 나눌 수 있다. 1. 소켓통신소켓 : 네트워크 상의 두 프로그램 사이에서 일어나는 양방향 통신 중 한쪽의 엔드 포인트(ip+port)를 의미: 소켓 통신에서는 클라이언트와 서버가 특정 포트를 통해 연결을 계속 유지하고 있기 때문에 실시간으로 양방향 통신이 가능하다. : 동영상 스트리밍, 온라인 게임등에서 사용되는 연결방식 2. HTTP 통신HTTP : 80번 포트를 사용해 웹 상에서 정보를 주고받을 수 있는 프로토콜: 클라이언트가 서버에 헤더와 바디로 이루어진 메시지를 요청하면 서버는 이 요청을 처리하고 .. [Android] WebView 세팅 Android에서 웹뷰를 구현하기 위해서는 WebView 객체를 사용한다. 하지만 WebView 객체만으로는 화면을 보여줄 수 있을 뿐이며 웹뷰 안에서의 다른 기능(ex. 버튼) 들은 동작할 수 없다. 이러한 것들을 제어하기 위해 여러 설정들을 통해 웹뷰를 세팅할 수 있는데 그 방법에는 크게 3가지가 있다. 1. WebView Settings : 웹뷰의 가장 큰 범주에서 웹뷰를 세팅한다. private WebSettings webSettings; @Override protected void onCreate(Bundle savedInstanceState) { ... webSettings = webView.getSettings(); webSettings.setJavaScriptEnabled(true); //.. [Android] 웹뷰(WebView)에서 window.open 처리 안드로이드 웹뷰에서 새 창을 열기 위해 사용되는 window.open을 처리하기 위해서는 이와 관련된 새로운 웹뷰를 생성하여 추가 구현이 필요하다. 1. window.open 사용하여 팝업 여는 html 파일 생성 웹뷰에서 새 창 띄우기 주소록 팝업 열기 2. 웹뷰 세팅 public class MainActivity extends AppCompatActivity { private WebView webView; //웹뷰 선언 private WebSettings webSettings; //웹뷰 세팅 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.la.. [Android] WebView Bridge 구현 브릿지(Bridge) [1] - 안드로이드와 웹뷰의 통신을 위해 만들어진 Javascript용 인터페이스 - 웹뷰에서는 안드로이드의 메서드를 직접 호출하는 것이 불가하므로 웹뷰에서 안드로이드의 기능을 사용하고 싶을 경우 등에 브릿지(Bridge)를 통해 호출해야 한다. 브릿지(Bridge) 구현 [2] : webview 환경에서 web과 native 간의 데이터를 주고받기 위한 bridge(@javascriptinterface)를 구현한다. : Web -> Android, Android -> Web으로의 데이터를 전달하는 방법을 동시에 구현한다. 1. Bridge 생성 - Bridge를 생성하여 WebView에서 showToast함수를 통해 Toast 메시지를 만들 수 있도록 구현해 본다. //Andro.. [Android] 웹뷰(WebView) 화면 로딩 오류 이전 포스팅에서 구현해본 WebView 실습에서 코드 구동 시 흰 화면이 나오며 로딩이 되지 않는 오류가 발생한 경험이 있다. [Android] 웹뷰(WebView) 구현 및 디버깅 웹뷰(WebView) [1] - Android 앱 내에서 웹 애플리케이션 또는 웹페이지를 제공해주는 프레임 앱에 웹뷰(WebView ) 구현하기 [2] 1) 안드로이드 프로젝트 생성 2) AndroidManifest.xml - 인터넷 동작을 위한 인터 dain-ing.tistory.com 이러한 현상은 SSL 인증서를 무시하는 방법으로 해결이 가능했다. 우선 SSL 인증서란 웹 서버와 브라우저 간 안전하게 암호화된 연결을 수립하기 위한 표준 보안 기술을 말한다. 대형 사이트들의 경우 https 통신과 SSL인증서가 있음으로 .. [Android] 웹뷰(WebView) 구현 및 디버깅 웹뷰(WebView) [1] - Android 앱 내에서 웹 애플리케이션 또는 웹페이지를 제공해주는 프레임 앱에 웹뷰(WebView ) 구현하기 [2] 1) 안드로이드 프로젝트 생성 2) AndroidManifest.xml - 인터넷 동작을 위한 인터넷 액세스 권한 추가 ... - 일반 http 사이트 접근을 위한 설정 추가 * http 주소의 웹페이지를 사용하는데 android:usesCleartextTraffic="true"를 추가해주지 않으면 'net:ERR_CLEARTEXT_NOT_PERMITTED' 에러가 발생한다. 3) activity_main.xml - 레이아웃에서 Webview를 앱에 추가하기 위해 다음 코드를 추가해준다. 4) MainActivity.java - onCreate()에 We.. 이전 1 다음