Language/Flutter,iOS,AOS
-
iOS Swift Notification 권한 확인하는 방법Language/Flutter,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/Flutter,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/Flutter,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); } }; ..
-
Xcode에서 archive 키체인 로그인 오류Language/Flutter,iOS,AOS 2024. 7. 1. 10:42
간만에 네이트브 개선건이 발생하여 수정 후 Archive하려고 했더니 키체인 오류가 난다. 여러번 로그인을 시도하였지만 계속 안되었고 인증서 정리를 깔끔하게 한번 한 후 새로 시도하였더니 되었다. 기록해 두자! 아카이브 중 로그인 오류오류! 인증서 정리만료 & 파기된 인증서 삭제키체인 접근 -> 만료 및 사용하지 않는 인증서들 모두 삭제! 사용하지 않는 인증서 삭제https://developer.apple.com/ 사이트랑 비교해서 사용하지 않는 인증서 모두 삭제 새로운 인증서 내려받기https://developer.apple.com/ 사이트에서 인증서를 내려받고 더블클릭하여 등록한다. 아카이브 재시도Xcode -> Archive -> 로그인 (MAC ID/PWD 입력) -> 성공!
-
iOS Swift 공유하기Language/Flutter,iOS,AOS 2024. 5. 20. 09:11
iOS 앱에서 공유하기 기능을 추가할 일이 생겼다, 다음을 위해 정리해두자.1. Reactclass Common { ... static share(text) { if (Util.Browser.isAndroidApp()) { try { AndroidBridge.share(text); } catch (e) {} return true; } else if (Util.Browser.isIosApp()) { const message = { action: 'share', text: text, }; window.webkit.messageHandlers.IosBridge1.postMessage(message); ..
-
plist 여러개 일때 Podfile 설정Language/Flutter,iOS,AOS 2023. 11. 3. 18:03
plist는 분리했는데 pod update 하면 메인 plist 파일에만 Embed Pods Frameworks 등이 생성되는 문제를 발견 하였다.처음에 몰라서 복사해서 다시 생성했는데 시간이 어마무시하게 걸린다.찾아보니 pod update 할때 Targets에 맞게 라이브러리를 설치하는 방법을 찾아서 정리해 놓는다. PodfilePodfile을 설정 해 두고 pod update하면 각각의 프로젝트에 pod 라이브러리들이 추가된다.use_frameworks!def sharepods pod 'FirebaseAnalytics' pod 'FirebaseMessaging' pod 'ReachabilitySwift' # Gif pod 'Gifu' # 카카오 pod 'KakaoSDKComm..
-
DT_TOOLCHAIN_DIR cannot be used to evaluate LIBRARY_SEARCH_PATHS, use TOOLCHAIN_DIR insteadLanguage/Flutter,iOS,AOS 2023. 11. 3. 12:21
Xcode Version 15.0.1 업데이트 이후에 앱이 실행이 되지 않고 오류가 발생하였다. DT_TOOLCHAIN_DIR cannot be used to evaluate LIBRARY_SEARCH_PATHS, use TOOLCHAIN_DIR instead 코코아팟 업데이트 xcode에서 업데이트 된 대응코드가 들어가 버전으로 코코아팟 버전을 올려 주어야 한다. $ sudo gem install cocoapods 개발중인 프로젝트에서 라이브러리 업데이트 $ pod update 버전 확인 https://github.com/CocoaPods/CocoaPods/issues/12012 "Error 'DT_TOOLCHAIN_DIR cannot be used to evaluate LIBRARY_SEARCH_PA..
-
iOS 인증서 갱신하기Language/Flutter,iOS,AOS 2023. 7. 17. 12:14
Apple에서 인증서를 갱신하라고 아래와 같이 메일이 왔다고 전달 받아서 갱신하는 방법에 대해서 기록해 둔다. 건담 님께, Distribution 인증서가 30일 후에 만료됩니다. 새 인증서를 생성하려면 로그인하여 Certificates, Identifiers & Profiles(인증서, 식별자 및 프로파일)를 방문하십시오. 인증서: Distribution 팀 ID: gundam1234567 만료된 인증서에 대해 자세히 알아보려면 인증서 지원 페이지를 방문하십시오. 감사합니다. Apple Developer Relations 구글링을 해봤더니 인증서를 삭제하더라도 이미 배포된 앱에는 영향이 안가고, 매년 해줘야 한다고 한다. 1. 애플 개발자 사이트 접속 https://developer.apple.com/..