적당한 고통은 희열이다

- 댄 브라운 '다빈치 코드' 중에서

반응형

초보 iOS 개발자의 일상/개발 업무 94

[Swift iOS] ipa 파일 다운로드 링크 생성 및 설치 (Ad Hoc & Enterprise)

adhoc 혹은 Enterprise로 배포할 경우 api 설치파일이 추출된다. ad hoc은 프로비저닝에 UDID가 등록된 기기만 다운을 받을 수 있고, Enterprise는 어느 기기에나 설치할 수는 있지만 Enterprise 계정이 있어야만 사용할 수 있다. api설치 파일을 직접 전달하여 설치하도록 할 수도 있겠지만 보통은 다운로드 링크를 통해서 설치할 수 있도록 하는 경우가 많다. 기존에 만들어놓은 Firebase Hosting을 재활용하려 내용을 수정하고 api파일을 넣고 firebase deploy를 했는데 권한이 없다는 경고가 떠버렸다...!! firebase login 해보니 다른 계정으로 로그인 되어있다고 떠서 firebase logout 후 다시 로그인을 해주었더니 deploy가 잘 된..

[iOS] 푸시 알림 터치시 바로 안열리고 열기가 표시될 때

잠금 화면에서 푸시 알림을 탭 했을 때 앱으로 바로 이동하지 않고 다음과 같이 열기를 눌러야만 앱으로 이동이 되는 경우가 있다. 믿기지 않지만 잠금 화면 설정에 따른 현상으로 설정을 변경해주어야 한다고 한다. 설정 - Face ID 및 암호 / Touch ID 및 암호 들어가서 Face ID / Touch ID 를 사용하여 iPhone 잠금 해제를 설정해주어야 한다. 이게 뭔상관이야 ㅡㅡ 반신반의하며 해봤는데 진짜 이거 때문이더라.. 참고 : https://blog.supersu.kr/computer/ios/how-to-fix-notification-center-not-open-when-tapping

[Swift iOS] INIpayMobile WebView

webView에서 결제를 할 수 있도록 이니페이모바일을 구현해주어야 한다. INIpay Mobile WEB 연동매뉴얼이 제공되어있긴 하지만 뭔말이신지... ㅠ 1. 쿠키설정 - 항상 허용 이니페이를 IOS WebView에서 호출하고 안심클릭 계열 서비스를 사용하는 경우, 쿠키를 허용해주어야 한다고 하는데 예시 코드가 Object-C로 되어있더라. 찾아보았더니 Swift에서는 다음과 같이 사용할 수 있을 듯? func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { ... HTTPCookieStorage.shar..

[iOS] 초간단 ipa 파일로 아이폰에 앱 설치하기 Mac & Window

설치 전에 주의할 점! adhoc으로 ipa 파일 추출했다는 가정 하에 설치할 수 있는 방법으로 해당 기기 UDID가 앱의 provisioning 파일에 등록이 되어있어야한다! 1. Mac에서 설치하는 법 맥에서 앱스토어를 키고 apple configurator를 설치한다. 핸드폰 연결해서 ipa 파일을 끌어다 놓아주기만 하면 설치가 된다! 2. Window에서 설치하는 법 맥이 아니라 윈도우를 쓰고 있다면 iTools 프로그램을 이용하여 설치를 할 수 있다. https://www.thinkskysoft.com/itools/ iTools - Provide the most useful tools for iOS users (thinkskysoft) iTools - We are focused on provid..

[Swift iOS] How to convert a string to an MD5 hash

MD5란? MD5 (Message-Digest algorithm 5) : 128비트 암호화 해시 함수 주로 프로그램이나 파일이 원본 그대로인지를 확인하는 무결성 검사 등에 사용된다. 암호화 결함 때문에 MD5알고리즘을 보안 관련 용도로 쓰는 것은 권장하지 않는다. 임의의 길이의 메시지(variable-length message)를 입력받아, 128비트짜리 고정 길이의 출력값을 낸다. 해시 함수(hash function) : 임의의 길이의 데이터를 고정된 길이의 데이터로 매핑하는 함수. 암호화 해시 함수(cryptographic hash function) : 매핑된 해시 값만을 가지고는 원래 입력값을 알아내기 힘들다는 성질(역상 저항성)에 의해 사용될 수 있다. 참고 : https://ko.wikipedi..

FFmpeg-mobile / VLC Player

동영상 재생을 다루는 앱들이 많은데, 동영상 재생에 쓰이는 라이브러리들과 용어들에 대해 탐구해보자. nefu - AVFoundation, MobileVLCKit, HaishinKit, mobile-ffmpeg-full, YTLiveStreaming, XCDYouTubeKit 딸기콩 - AVFoundation, MediaPlayer Heystars - AVFoundation, youtube-ios-player-helper, Soribada - youtube-ios-player-helper Codec 코덱 영상 데이터를 압축하고, 또 압축을 푸는 프로그램을 코덱이라고 한다. 영상 전송을 위해 용량이 큰 파일을 작게 만들어주는 것이 인코딩, 본래대로 재생할 수 있게 압축을 푸는 것이 디코딩. HLS (HTTP..

[Swift iOS] MTMapView 다음 카카오맵 지도 사용해보기

MTMapView를 사용하여 지도 기능을 좀 더 편리하게 구현할 수 있다. 이미 지도 기능은 구현이 되어 있는 상태에서, 가맹점을 검색하면 해당 가맹점 위치로 지도가 이동하게끔 하는 수정 작업을 했다. MTMapView 내장 기능으로 아주 편리하고 간단하게 구현이 가능하더라! MTMapViewDelegate는 object-c로 작성되어 있어 swift용 레퍼런스 코드를 따로 제공해주지는 않지만, 워낙 한글로 자세하게 설명이 되어있어 간단하게 사용할 수 있었다. fitAreaToShowAllPOIItems() 메서드를 이용하니 지도 화면에 추가된 모든 POI item들이 화면에 나타나도록 지도를 자동으로 조정해주더라. 굿굿. 검색 결과가 하나일 경우에는 해당 가맹점 위치로 지도 이동 후 빨간색으로 선택까지..

[Swift iOS] 푸시 메시지 클릭시 url로 WebView 이동시키기

하이브리드 iOS 앱에서 Push 클릭시 특정 url 페이지로 이동시키는 법을 알아보자. 서버 쪽에서 전달되는 Push 데이터의 구조는 다음과 같다. [ … "aps": { alert= { body = (메시지); title = (타이틀); }; }, “link”: ; … ] 푸시 메시지를 클릭 시 실행되는 이벤트는 AppDelegate에 extension으로 UNUserNotificationCenterDelegate 프로토콜을 추가해준 후 다음 메서드에서 linkURL을 받아와 코드를 작성해줄 수 있다. @available(iOS 10.0, *) func userNotificationCenter(_ center: UNUserNotificationCenter, didReceive response: UNN..

[Swift iOS] 푸시 알림 이미지 삽입 UNNotificationServiceExtension

생각보다 매우 까다로웠다. 삽질을 아주아주 많이 거쳐 구현을 해냈다. 덕분에 Target Extension도 처음 사용해보고 아주 흥미로운 작업이었다. 우선 FCM 푸시알림은 구현이 되었다는 가정 하에, 이미지 url을 받아와 적용하는 법을 알아보자. (기본적인 FCM 푸시알림은 다음을 참고 -> FCM 푸시 설정) 1. Notification Service Extension 추가 프로젝트 - TARGETS 하단의 + 버튼을 눌러주면 다음과 같이 새로운 타겟을 추가해줄 수 있다. custom으로 푸시 알림을 설정할 수 있도록 Notification Service Extension을 추가해준다. Product Name : ServiceExtension으로 설정해주고 finish 해주면, ServiceExt..

728x90
반응형