Language/iOS,AOS
-
리뷰 작성 유도 방법Language/iOS,AOS 2025. 1. 8. 10:29
iOS에서 리뷰 작성을 유도하기 위해서 팝업 및 리뷰페이지 이동방법을 정리한다. 소스코드MainViewControllerclass MainViewController: BaseViewController { let APP_STORE_ID = "111111111" ...}enum WebAction: String { ... case openReviewApp case openReviewPage}extension MainViewController: WKScriptMessageHandler { func userContentController(_ userContentController: WKUserContentController, didReceive message: WKScriptMes..
-
iOS, Swift에서 swipe back 제스처 인식기 추가Language/iOS,AOS 2024. 12. 26. 17:10
메인 WKWebView Swipe 활성화Swipe로 뒤로가기, 앞으로가기 활성화override func viewDidLoad() { ... wKMainWeb?.allowsBackForwardNavigationGestures = true ...}Swipe로 뒤로가기, 앞으로가기 비활성화override func viewDidLoad() { ... wKMainWeb?.allowsBackForwardNavigationGestures = false ...} 팝업 UIView 설정UIView등 새창으로 생성되는곳에 코드를 삽입해준다.팝업 호출시 스와이프 백 제스처 인식기 추가// MARK: - iOS Bridge// 웹 액션 정의 : WebAction을 구분하는데 사용되는 타입enum WebAction:..
-
CocoaPods 버전 올리기Language/iOS,AOS 2024. 12. 26. 11:03
최신 버전 확인CocoaPods의 최신 버전 정보는 RubyGems 웹사이트에서 확인할 수 있다.터미널에서 다음 명령어를 입력하여 현재 RubyGems에 등록된 CocoaPods의 최신 버전을 확인할 수 있다.버전 확인$ gem search '^cocoapods$' --remote CocoaPods 업그레이드업그레이드$ sudo gem install cocoapods 설치확인$ pod --version CocoaPods Repo 업데이트CocoaPods의 리포지토리 정보도 최신 상태로 업데이트하는 것이 좋다고 한다.새로운 라이브러리와 호환성 정보를 제공한다고 하는데 정확히는 잘 모르겠다. 그냥 해놓자.실행$ pod repo update 프로젝트의 pod업데이트깔끔하게 정리해서 업데이트 하자$ pod ca..
-
iOS/Swift WKWebView 쿠키 공유하기Language/iOS,AOS 2024. 9. 23. 16:54
iOS/Swift로 하이브리드 앱으로 개발된 서비스에서 새창일경우 View하나 만들어서 WKWebView로 페이지를 띄우는데 새창의 웹뷰에서 로그인이 되었을 경우에 부모창에는 쿠키가 공유되지 않는 문제가 발생하였다.현재 버전에서 문제점을 파악하고 후딱 처리해보자. 웹에서 Bridge를 통해서 Native 함수를 호출하고 Native상 메소드에서 부모 WebView에 쿠키를 공유하는 방법으로 진행하였다. ReactCommon library // 자식창에서 로그인 후 부모창의 세션정보를 업데이트 하기 위해 사용 static updateSessionOfOpener() { if (Util.Browser.isAndroidApp()) { AndroidBridge.callOpener('Common...
-
iOS에서 코코아팟 버전 업데이트Language/iOS,AOS 2024. 9. 23. 12:46
구글 플레이 콘솔에 파이어 베이스 권장 조치 메세지를 받게되었다. 간단하지만 기록은 하자.기존 라이브러리를 확인해보니 FirebaseAnalytics (10.19.0) 버전이다.후딱끝내고 다음 작업 진행하자. 권장조치 라이브러리 업데이트$ pod update Update all pods Updating local specs repositories Analyzing dependencies Downloading dependencies Installing Alamofire 5.9.1 (was 5.8.1) Installing FBAEMKit 17.1.0 (was 16.2.1) Installing FBSDKCoreKit 17.1.0 (was 16.2.1) Installi..
-
iOS Swift Notification 권한 확인하는 방법Language/iOS,AOS 2024. 7. 10. 16:50
iOS 단말기에서 알림설정 정보를 가져와서 표시해주자. JavaScriptcommon.jsclass Common { ... static isNotificationAuthorization() { if (Util.Browser.isAndroidApp()) { } else if (Util.Browser.isIosApp()) { window.isNotificationAuthorization = (jsonData) => { console.log('jsonData : ', jsonData); if (jsonData['isAllowedNotification'] === true) { console.log('AUTH OK'); } else ..
-
네이티브 & React 배포 버전 이슈 처리Language/iOS,AOS 2024. 7. 10. 15:48
React iOS Native로 통신하는 구조에서 iOS에 없는데 웹소스가 배포 되거나, 웹소스 배포 후 네이티브가 배포되면 문제가 발생한다.매번 예외 처리는 하지만 그떄마다 신경쓰는게 꽤 많이 많이 귀찮다.이번 기회에 자바스크립트에서 네이티브에 통신하였는데 해당 함수가 없어도 문제가 없도록 개선해 보자. JavaScriptcommon.jswindow.openExternalLinkCallback 함수를 미리 정의해 두고 네이티브에서 콜백해주자.class Common { ... static openExternalLink(url) { if (Util.Browser.isAndroidApp()) { Common.open2(url); } else if (Util.Browser.isIos..
-
Swift 외부 브라우저(사파리)로 링크 열기Language/iOS,AOS 2024. 7. 10. 15:33
React + Swift WebView로 개발된 서비스에서 외부 브라우저(사파리)에서 다른서비스를 띄워야 하는 니즈가 발생하였다.정리해두자. JavaScriptcommon.jsclass Common { ... static openExternalLink(url) { if (Util.Browser.isAndroidApp()) { Common.open2(url); } else if (Util.Browser.isIosApp()) { window.openExternalLinkCallback = (jsonData) => { if (jsonData['result'] === false) { Common.open2(url); } }; ..