앱등이에게 살충제를 뿌린다./iOS
-
Adhoc과 in-House distribution의 차이앱등이에게 살충제를 뿌린다./iOS 2017. 7. 24. 21:27
in house 프로비저닝 프로파일(이하 PP)을 생성하기 위해서는 iOS 개발자 엔터프라이즈 계정이 필요하다.주로 사내 직원들에게 배포할 목적을 갖고 만드는 계정이다.일반 개발자 계정에는 in house배포용 PP가 없다.Adhoc PP는 배포타입이 Distribution이고, in house PP는 배포타입이 Universal Distribution이다. (아래 사진참조) Universal Distribution으로 배포할 때는, 디바이스의 UUID가 필요없다.사내망 또는 보안망을 통해서 접근할 수 있는 직원&테스터들이 마음껏 다운로드받을 수 있다.Adhoc PP는 테스트할 수 있는 단말을 지정해주어야하고, 3개월 뒤 PP가 만료된다. 두 인증서 모두 iOS 배포 인증서가 필요하다. 두 타입의 PP를..
-
[iOS] Kingfisher의 AnimatedImageView(UIImageView의 GIF재생)에 대하여앱등이에게 살충제를 뿌린다./iOS 2017. 7. 16. 16:14
Kingfisher를 통해서 gif재생을 한번 생각해보자. iOS에서 gif를 재생하기 위해서는 어떻게 해야할까?let imageView = UIImageView() let images = [UIImage(), UIImage(), UIImage(), UIImage()] imageView.animationImages = images imageView.startAnimating()이렇게 해야하나?이래도 되겠다.근데 이러지말자. 샘플 앱Kingfisher & 갓쯔위님과 샘플을 제작해보자.스토리보드 + 아래 코드만 사용했다. private func setImages() { let gifs = ["http://upload2.inven.co.kr/upload/2016/07/14/bbs/i10401856776.gif..
-
[Raywenderlich - iOS] Universal Link 적용하기앱등이에게 살충제를 뿌린다./iOS 2017. 7. 2. 03:21
iOS9에서 소개된 Universal link. Raywenderlich의 튜토리얼을 살펴봅니다! 혹시 제공하는 서비스가 웹과 iOS앱을 함께 지원하고 있나요? iOS9에서 웹과 앱을 연결할 수 있는 Universal link가 소개되었습니다. 사용자가 웹에서 HTTP link를 탭하면 즉시 앱으로 서비스가 연결되는 아주 seamless한 기능이지요. 이번 튜토리얼에서는 Heroku웹사이트를 iOS앱과 연결하는 방법을 소개합니다. 이 서비스는 single-board computer(아두이노, 라즈베리파이 등)를 소개합니다. 참고로, Universal link적용을 위해서는 반드시 애플 개발자 계정이 등록되어 있어야 합니다! NoteUniversal link을 사용하면 URL Scheme의 기능을 대부분 ..
-
[iOS/Push] XCode에서 푸쉬알림으로 앱실행하는 것을 디버깅하려면?앱등이에게 살충제를 뿌린다./iOS 2017. 6. 9. 00:13
와.. 진짜 무식하면 손발이 고생한다고 누군가 나의 귀에 속삭인 것 마냥 손발이 힘들었다. 앱에서 푸쉬알림을 받으면, 3가지의 경우가 존재한다. 1. App running on the foreground2. App running on the background3. App not running 디버깅을 생각해보자.1, 2번의 경우는 XCode에서 평소와 같이 Build&Run을 하여 디버깅을 하면 된다. 하지만 3번의 경우는 어떻게 디버깅을 할 수 있을까?난 무식한 놈이라서 로그를 찍으면서 개발을 하였다. 하지만 사실은 안그래도 된다.아래 사진처럼 Edit Scheme메뉴에서 Wait for executable to be launched를 선택한 뒤에 빌드해주자. 이렇게 하면 앱이 아이폰에 Install되..
-
[iOS/APNS] Notification의 payload에는 무엇이 있을까?앱등이에게 살충제를 뿌린다./iOS 2017. 6. 9. 00:04
{ "aps": { "alert": "Breaking News!", "sound": "default", "link_url": "https://raywenderlich.com" } }푸쉬알림의 Payload는 보통 위와같은 형태입니다. json타입이고 root key값은 "aps"입니다.그럼 "aps" 딕셔너리에 담기는 주요 키 값들에 대해서 알아보겠습니다.alert. 보통 문자열이 들어갑니다. 딕셔너리를 사용해서 문자열을 Localize할수도 있습니다. 알림에 표시되는 메시지가 alert에 해당합니다.badge. 앱아이콘 오른쪽상단에 표시되는 숫자를 나타냅니다. 0으로 설정하면 숫자가 사라집니다. thread-id. 알림을 그룹화하기 위한 키 값을 입력합니다.sound. 알림의 사운드를 설정할 수 있습니..
-
[iOS] 푸쉬를 연속으로 발송하면 몇 개만 옵니다. APNS의 Queue에 대해 알아보자.앱등이에게 살충제를 뿌린다./iOS 2017. 6. 8. 23:48
APNS에서는 발송해야할 푸쉬를 Queue에 보관합니다. 하지만 이 Queue는 사이즈가 무려 1 입니다. 여러개의 푸쉬를 담아둘 수가 없기에, 2개의 푸쉬발송 요청이 들어온다면 1개는 버려야 합니다. 그럼 푸쉬 발송을 준비하고 있는 와중에 새로운 푸쉬발송이 들어오면 어떻게 될까요? 1. 기존에 발송하려던 푸쉬는 무시하고 새로운 푸시를 보낸다.2. 새로운 푸쉬는 무시하고 기존에 발송하려던 푸시를 보낸다. 정답은 1. 기존에 발송하려던 푸쉬는 무시하고 새로운 푸시를 보낸다. 입니다.꺄륵
-
[CALayer] CAScrollLayer에 대해서 알아보자.앱등이에게 살충제를 뿌린다./iOS 2017. 6. 6. 23:46
예제에 사용된 앱 : https://itunes.apple.com/us/app/layer-player/id949768742?mt=8예제에 사용된 소스 : https://github.com/scotteg/LayerPlayer원문 : https://www.raywenderlich.com/90488/calayer-in-ios-with-swift-10-examples CAScrollLayer는 스크롤가능한 Layer를 표현합니다. CAScrollLayer는 간단한 편이고, 사용자의 터치나 제스쳐에 다이렉트로 respond할 수 없습니다. 그렇다면 UIScrollView의 layer는 CAScrollLayer타입일까? 라는 의문이 생길 수 있는데요. 그건 아닙니다. UIScrollView는 CALayer의 bou..
-
[CALayer] CALayer의 몇 가지 프로퍼티에 대해서 알아보자.앱등이에게 살충제를 뿌린다./iOS 2017. 6. 6. 22:28
모든 UIView는 디폴트로 CALayer타입의 layer프로퍼티를 갖고 있다.그렇다면 CALayer에 대해서 간단히 알아보자. - Layer는 Sub layer를 가질 수 있다. UIView가 subview를 갖듯, layer도 sublayer를 가질 수 있다. 이 점을 이용하여 많은 시각적 효과를 표현할 수 있다. - Layer의 프로퍼티들은 Animating이 가능하다. Layer의 프로퍼티를 변경하면 설정된 시간에 걸쳐서 애니메이션이 진행된다. 이를 통해서 역시나 많은 시각적 효과를 표현할 수 있다. - Layer는 가볍다. Layer는 UIView에 비해 훨씬 가벼운 객체다. 따라서 UI를 담당하는데 있어서 View보다 나은 퍼포먼스를 기대할 수 있다. - Layer는 엄~~청나게 많은 프로퍼티..