webview 6

[flutter] native(앱) 의 웹뷰(vue3) 양방향 통신 방법 webview_flutter 사용

webview_flutter : 안드로이드에서는 정상 작동하지만 iOS 에서는 alert 을 비롯한 알수없게 작동안된다. => InAppWebViewController 로 변경 목적 : flutter 와 웹뷰(vue3) 의 양방향 통신방법에 대해서 알아본다. 전제 조건 : vue3 에서는 쉐워드워커, 워커를 사용하기 때문에 워커에서는 flutter 의 웹뷰로 의 양방향 통신은 불가능하다. 프로세스 흐름 - input (request) ui 에서 Tr 클릭 (n_flutter.vue) Tr input 객체를 만들어 Worker 로 전송 $Worker.send(data); (n_flutter.vue) js/index.js 의 send 함수에서 웹인지 앱인지 체크 (/js/index.js) inputHexSt..

[flutter] native 와 webview 양방향 통신 방법

목적 : 네이티브와 웹뷰간의 양방향 통신 방법을 알아본다. 네이티브 : 서버와 tcp/ip 소켓접속 후 데이터 전송하여 받아오는 역할을 한다. 웹뷰: input 정보를 네이티브에 전송하고 서버에서 받아온 응답 데이터를 네이티브에서 받아온다. 현재까지는 hexString 으로 input 값으로 전달한후 output 값도 hexString 으로 받아온다. output connect : tcp/ip 소켓 접속연결한다. sendTr : 연결된 소켓으로 input hexString 보낸다. Flutter 프로젝트 구조 main.dart /* * https://pub.dev/packages/webview_flutter * https://kbwplace.tistory.com/176 * */ import 'dart:c..

안드로이드 웹뷰와 웹워커 브릿지 (android + webview + webworker bridge example) 샘플

목적 안드로이드에서 웹뷰를 실행한후 브릿지를 이용하여 연동하는 방법과 웹뷰와 웹워커를 이용합니다. 서버에서 받은 TR 을 분석하는 일을 웹워커에게 전달후 TR 분석 작업이 끝나면 json 데이터를 html 페이지에 돌려주는 방법 입니다. 또한 디자인패턴의 테플릿 메소드 패턴을 사용하여 추가되는 TR 분석은 클래스만 만들어서 사용합니다. 하고자 하는 것을 정리해보면 아래와 같습니다. 웹뷰에서 조회1 클릭 네이티브로 데이터 전송 ( TrMake.js window.HybridApp.sendMessage ) 네이티브에서 데이터 받음 ( webView.addJavascriptInterface(new AndroidBridge(), "HybridApp"); ) 네이티브 -> TR 서버 데이터 전송 서버 TR 응답 데..

프로그래밍/Js 2023.02.28

안드로이드 TCP Socket + Webview bridge 샘플

목적 : 안드로이드 webview 와 native 간의 bridge 를 이용하여 연결하는 방법을 알아보도록 하겠습니다. 또한 native 는 TCP Socket 을 이용하여 데이터 전송을 할 예정입니다. 다소 복잡할것 같지만 소스 보면서 확인하시죠 안드로이드 AndroidManifest.xml MainActivity.java package com.example.worker_bridge; import android.content.Context; import android.os.Bundle; import android.os.Handler; import android.os.StrictMode; import android.util.Log; import android.view.View; import android..

flutter 앱에 webView 추가 방법

안드로이드 스튜디오를 이용하여 flutter 에서 webview 추가하는 방법을 알아보겠습니다. pubspec.yml webview_flutter 추가 dependencies: flutter: sdk: flutter # The following adds the Cupertino Icons font to your application. # Use with the CupertinoIcons class for iOS style icons. cupertino_icons: ^1.0.2 webview_flutter: ^4.0.2// 추가 android > app > build.gradle 수정 defaultConfig { // TODO: Specify your own unique Application ID (htt..

[android] net::ERR_UNKNOWN_URL_SCHEME

카카오톡 링크시 아래와 같은 오류가 발생 intent://startNavi?routeOption=100&etype=place&eid=17494023&en=%EC%97%AD%EA%B3%A1%EC%97%AD 1%ED%98%B8%EC%84%A0&ep=37.485314358615625,126.81205932067193&referrer=mmapweb#Intent;scheme=daummaps;package=net.daum.android.map;end의 웹페이지를 로드할 수 없습니다. net::ERR_UNKNOWN_URL_SCHEME 원본소스 private class WebViewClientClass extends WebViewClient { @Override public boolean shouldOverrideUr..