Development
-
iOS/WebView/Project - 웹뷰 JS 양방향 통신#13Project/Swift+WebView 2023. 1. 20. 11:14
웹뷰를 이용한 하이브리드앱을 개발할 시 네이티브와 웹의 상호 작용하는 부분들이 생각보다 많습니다. 팝업 & 로그인 세션 & JWT 토큰 등 이벤트를 캐치해서 처리하는 경우 인터페이스를 정의해서 일련의 규칙을 정하여 개발하지 않으면 개발이 산으로 갈 수밖에 없고 유지보수도 상당히 어려울 것입니다. 이러한 부분들을 가능하게 해주는 부분들에 대해서 처리해 볼 것입니다. 기본적으로 WKUserContentController을 사용하여서 가능하며 코드로서 생성하는 것이 좋다고 합니다. 웹뷰 초기화 함수의 configuration속성을 사용해야 하는데 스토리 보드로는 해당 속성을 사용 못하기 때문입니다. 여러 사이트를 참조하여 아래 코드를 완성였습니다. 참조 블로그 님들 감사드립니다. MainViewControll..
-
IOS - 웹뷰 사파리 브라우저 디버깅Language/iOS,AOS 2023. 1. 20. 09:11
개발자용 메뉴 켜기 사파리 브라우저 -> 설정 메뉴 막대에서 개발자용 메뉴 보기 활성화 개발자용 메뉴가 활성화 되어있는것을 알수 있다. 개발자용 -> Safari Technology Preview 받기 클릭 또는 아래사이트데서 mac os 버전에 맞게 설치하면 된다. https://developer.apple.com/safari/technology-preview/ Safari Technology Preview - Safari - Apple Developer Safari is the best way to see the sites on iPhone, iPad, and Mac. Safari Technology Preview gives you an early look at upcoming web technolo..
-
iOS/Xcode 14X/오류 - This method should not be called on the main thread as it may lead to UI unresponsivenessLanguage/iOS,AOS 2023. 1. 19. 16:01
WKWebView를 띄웠더니 난데없이 아래의 에러가 발생하였다. 다음에 찾기 어려울수 있으니 기록해 두자. This method should not be called on the main thread as it may lead to UI unresponsiveness. 메인 스레드에서 WKWebView의 로드 요청을 사용 중일 수 있기 때문이라고 한다. 대부분 의견들이 Xcode 다음버전에서 개선될 가능성이 크다고 한다. admob에서도 애플이랑 커뮤니케이션 중이라고 하고 원인 분석중이라고 경고 메세지는 무시하면 된다고 한다. 무시하고 일단 작업하자! 참조 https://developer.apple.com/forums/thread/713290 This method should not be called o..
-
iOS/Xcode 14X - NavigationController 화면 전환 방법Language/iOS,AOS 2023. 1. 18. 14:41
화면 전환 방법에는 대표적으로 네 가지 방법이 있다. ViewController의 view 바꿔치기 ViewController가 다른 ViewController를 호출(present) NavigationViewController 사용하여 화면 전환(push) 화면 전환용 객체 Segue 사용 아래에서 각각의 방법으로 이동하는 법을 알아보자. 먼저 이동할 Scene에 아래와 같이 Storyboard ID를 입력한다. ViewController의 view 바꿔치기 메인뷰를 바꿔치기 하는 방식이다, 하지만 메모리 overflow 위험이 있기 떄문에 좋은 방법이 아니라고 한다. // ##### CASE1. ViewController의 view 바꿔치기 let mainVC = UIStoryboard(name: "..
-
iOS/WebView/Project - 화면전환 및 웹뷰 적용#12Project/Swift+WebView 2023. 1. 18. 12:25
IOS/Xcode 14X Swift5.7.2 WKWebView 에서 작업 진행 https://github.com/dchkang83/ios-webview-project/releases/tag/1.0 Release 1.0 · dchkang83/ios-webview-project github.com 화면 전환 방법에는 대표적으로 네 가지 방법이 있다. ViewController의 view 바꿔치기 ViewController가 다른 ViewController를 호출(present) NavigationViewController 사용하여 화면 전환(push) 화면 전환용 객체 Segue 사용 아래 포스팅에 각각의 전환 방식에 대해서 설명되어 있다. https://dchkang83.tistory.com/126 IOS..
-
iOS/WebView/Project - 서버별 테스트 환경 만들기#11Project/Swift+WebView 2023. 1. 13. 16:16
IOS/Xcode 14X Swift5.7.2 WKWebView 에서 작업 진행 이번장에서는 지난 블로그에서 설정한 Constants(상수) 및 AppInfo(싱글톤)를 활용하여 웹뷰에 나타나는 웹서버를 변경할 수 있도록하여 디버깅 및 앱에 대한 테스트 편의성을 높혀보자. 앱 실행 환경에 따라 다른 진입 운영 환경 : 앱 실행 -> 슬플래시 이미지 -> 로컬/개발/스테이징/운영을 선택할 수 있도록 한다. 디버깅 환경 : 앱 실행 -> 슬플래시 이미지 -> 운영 웹뷰 노출 작업 진행 먼저 ViewController의 생명주기(Life Cycle) 중 viewDidAppear 함수에 서버를 선택하는 UIAlertController를 설정할 것이다. https://dchkang83.tistory.com/109 ..
-
iOS/WebView/Project - Constants 및 Utils 분리#10Project/Swift+WebView 2023. 1. 13. 15:30
IOS/Xcode 14X Swift5.7.2 WKWebView 에서 작업 진행 상수 추가 가독성 및 유지보수를 위해서 상수를 추가한다. import Foundation struct Constants { static let SERVER_LOCAL: String = "LOCALHOST" static let SERVER_DEV: String = "DEVELOPMENT" static let SERVER_STG: String = "STAGING" static let SERVER_PROD: String = "PRODUCTION" static let SERVERS = [ SERVER_LOCAL: [ "NAME": "로컬", "URL": "http://local" ], SERVER_DEV: [ "NAME": "개발",..
-
티스토리 네이버 검색에 나오도록 하는 방법ETC/일상다반사 2023. 1. 13. 12:20
네이버 검색 등록https://searchadvisor.naver.com/ 네이버 서치어드바이저네이버 서치어드바이저와 함께 당신의 웹사이트를 성장시켜보세요searchadvisor.naver.com 위 사이트 접속 후 웹마스터 도구 사용하기 동의 후 확인 URL접두어에 블로그 URL 등록 사이트 소유확인HTML 태그 클릭 -> 메타태그 복사 -> 창 끄지 말고 유지!!! 복사한 메타태그를 티스토리 블로그 HTML에 넣어주자관리자모드 -> 꾸미기>스킨편집 스킨의 HTML 편집 복사한 메타테그를 스킨 HTML에 추가 -> 적용 확인 완료 RSS & 사이트맵 등록하기https://searchadvisor.naver.com/console/board 네이버네이버에 로그인 하고 나를 위한 다양한 서비스를 이용해 보..