Android(66)
-
마지막으로 알려진 위치 가져오기
Step 1. gradle에 구글 위치 서비스 추가 implementation 'com.google.android.gms:play-services-location:18.0.0' Step 2. 위치 서비스 클라이언트 인스턴스 생성 후 마지막으로 알려진 위치 가져오기 getLastLocation() 메서드는 지리적 위치의 위도 및 경도 좌표가 있는 Location 객체를 가져오는 데 사용할 수 있는 Task를 반환합니다. private lateinit var fusedLocationClient: FusedLocationProviderClient override fun onCreate(savedInstanceState: Bundle?) { fusedLocationClient = LocationServices...
2021.05.04 -
WebView 세팅 속성
setJavaScriptEnabled ( false ) 웹뷰를 사용하면 네이티브 영역에서 코드로 처리 되는 것이 거의 없는 경우가 많습니다. 그래서 자바스크립트로 이루어져 있는 기능들을 사용하기 위하여 해당 속성을 추가해야합니다. setJavaScriptCanOpenWindowsAutomatically ( false ) 필요에 의해 팝업창을 띄울 경우가 있는데, 해당 속성을 추가해야 window.open() 이 제대로 작동합니다. setLoadsImagesAutomatically ( true ) 웹뷰가 앱에 등록되어 있는 이미지 리소스를 자동으로 로드하도록 설정하는 속성입니다. setUseWideViewPort ( false ) 웹뷰가 wide viewport를 사용하도록 설정하는 속성입니다. 그래서 h..
2021.04.30 -
ScrollView 안에 WebView Height
스크롤뷰에 WebView를 넣으면 아래와 같이 전체 화면에 꽉차게 나오지 않는다. 스크롤뷰의 옵션 android:fillViewport="true" 를 입력 해야지만 WebView가 꽉차서 나온다.
2021.04.30 -
WebView AdjustResize 동작 안함
이유 : FullScreen 모드 이면 동작 안함 Manifest AppTheme에 FullScreen 모드 옵션이 적용되어 있는지 확인 필요
2021.04.30 -
WebView Alert 동작 안함
동작 안하는 이유 : WebChromeClient 설정을 안해 주어서(alert로 출력되는 팝업이 웹 브라우저의 자체 기능) 웹에서 alert를 호출 하면 onJsAlert에서 정보를 받는다. 아래와 같이 설정 하면 alert이 활성화 된다. mWebView.setWebChromeClient(new WebChromeClient(){ // mWebView에 WebChromeClient를 사용하도록 설정한다. @Override public boolean onJsAlert(WebView view, String url, String message, JsResult result) { return super.onJsAlert(view, url, message, result); // super.onJsAlert는 f..
2021.04.30 -
자바스크립트 코드를 Android 코드에 결합
사용 이유 : 자바스크립트로 안드로이드 함수 호출 가능 사용 방법 : 1. 호출할 함수 정의 /** Instantiate the interface and set the context */ class WebAppInterface(private val mContext: Context) { /** Show a toast from the web page */ @JavascriptInterface fun showToast(toast: String) { Toast.makeText(mContext, toast, Toast.LENGTH_SHORT).show() } } 2. 웹뷰에 연결 val webView: WebView = findViewById(R.id.webview) webView.addJavascriptInte..
2021.04.30