package com.HelloWeb; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.webkit.WebView; import android.webkit.WebViewClient; public class HelloWeb extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); webview = (WebView) findViewById(R.id.webview); try { webview.loadUrl("http://m.daum.net/"); } catch (Exception ex) { ex.printStackTrace(); } webview.getSettings().setJavaScriptEnabled(true); webview.setWebViewClient(new DraptWebViewClient()); } } @Override private
class DraptWebViewClient extends WebViewClient { (1) HTTP URL 지정 방법 browser = (WebView) findViewById(R.id.webkit); 위의 경우에 인터넷 권한을 매니페스트 파일에 등록하고도 에뮬레이터에서 연결이 안되는 경우에는 단말의 네트워크 설정을 확인해 보시기 바랍니다. Settings > Wireless&Networks > Airplane Mode 가 선택되어 있거나 할 경우 에뮬레이터에서 3G 연결 등이 안될 수 있습니다. 이 설정이 문제가 없고 에뮬레이터 상단에 3G 아이콘이 보이고 PC 자체가 인터넷에 연결 가능하면 위의 코드로 페이지가 보일 것으로 예상됩니다. (2) 문자열 데이터 지정 방법 browser = (WebView)findViewById(R.id.webkit); 위의 경우에 <meta> 태그를 이용해 charset을 utf-8 로 지정하면 한글을 볼 수 있습니다. (3) 파일 지정 방법 hello.html 파일에 아래의 내용이 들어가 있을 경우, <meta http-equiv='Content-Type' content='text/html; charset=euc-kr' /> - 프로젝트의 /assets 폴더에 위의 파일을 추가합니다. - 아래 코드를 이용하여 로딩합니다. - 파일에서는 <meta> 태그의 charset을 euc-kr 로 지정하면 한글을 볼 수 있습니다. browser = (WebView) findViewById(R.id.webkit); 참고 : http://android-town.org/ ※ 애뮬레이터에서 정상적으로 WebView가 실행되지 않는다면, Manifest.xml 에서 인터넷 permission을 허용해준다. <!-- Internet Permission Configuration --> 모바일웹에서 앱 호출하기 ( 스키마를 이용한 앱 호출하기, 모바일웹에서 마켓 이동하기 ) 앱을 만들때 커스텀 스키마를 등록을 해주고, 모바일웹에서 그 커스텀 스키마를 호출하는 방식이다. 안드로이드 매니페스트 파일 host를 main_web 으로 설정, scheme를 myappandroi 로 설정
아이폰 TARGETS - URL Types 에 추가 Identifier를 com.myappandroid.m 으로 설정, scheme를 myappandroi 로 설정
Javascript 파일에서.. 안드로이드폰은 해당 앱이 있으면 앱을 실행하고, 없으면 플레이스토어로 이동이 잘되지만, 아이폰은 현재 코딩대로 하면 해당 앱이 있으면 앱을 실행하고, 해당 앱이 없으면 "오류 팝업 메시지" 가 나오고 잠시후에 앱스토어로 이동하는 방식이다. 해당 앱이 없을경우 처리가 원만하지 않아서... 그냥 무조건 앱스토어로 가도록 처리하는것도 좋을것 같다.
참고 : https://marobiana.tistory.com/111 모바일 웹 브라우저에서 앱 설치여부에 따라 앱 또는 마켓으로 이동시키기 모바일 웹 브라우저에서, 앱 설치 여부에 따라 마켓 또는 앱으로 이동 시키기. 일종의 브릿지 페이지.. 먼저 아이폰의 경우.. 간단하다! var userAgent = navigator.userAgent; var visitedAt = (new Date()).getT.. marobiana.tistory.com https://g-y-e-o-m.tistory.com/121 [iOS & Android] 웹 브라우저에서 앱 실행하기 [기본은 스키마] iOS : http://g-y-e-o-m.tistory.com/33 Android : http://g-y-e-o-m.tistory.com/32 안드로이드의 경우 매니페스트 내에 선언한 스키마(Scheme), 호스트(host)란 안드로이드 속성으로 선언하여,.. g-y-e-o-m.tistory.com 요즘은 Firebase 동적 링크를 많이 사용하곤 한다. 이 방식을 사용하여, 해당 앱이 없으면 설치를 해당앱이 있으면 앱 실행을 할 수 있다. 아래 링크를 확인해 보자 https://firebase.google.com/docs/dynamic-links?authuser=0&%3Bhl=ko&hl=ko Firebase 동적 링크 | Firebase Documentation Firebase 동적 링크는 앱 설치 여부에 관계없이 여러 플랫폼에서 원하는 대로 작동하는 링크입니다. firebase.google.com |