반응형

ios 31

[Swift] Switch 표현식

// 아론 힐리가스의 iOS 프로그래밍 5판// 2장 Swift 언어// 열거형과 Switch문 몇달 전 회사 개발 서적으로 이 책을 신청했는데 계속 못보고.. 이제서야 집에 가져와서 보고있다. // enum문 예제enum FruitType {case Applecase Bananacase Orange} // Switch문 예제let favoriteFruit = FruitType.Apple // favoriteFruit의 Type : FruitTypelet name: Stringswitch favoriteFruit {case .Apple:name = "Apple"case .Banana:name = "Banana"case .Orange:name = "Orange"} // name = "Apple" 위 구문에..

Programming/Swift 2018.10.20

[iOS/Swift3.0] Concurrency 간단히 살펴보기

iOS Concurrency 간단 정리!! Concurrency란? 동시성 -> 프로그램을 실행할 때 단 하나의 실행 순서를 갖도록 하는 제약을 없애고 각 부 프로그램이 다른 부프로그램과 병렬적으로 동시에 실행되는 것 -> 두 개 이상의 프로세스들이 다른 프로세스의 수행과 상호 독립적으로 동시에 수행될 수 있는 성질-> Concurrency은 여러 스레드가 동시에 진행되는 것처럼 보이나 실은 작업을 번갈아가며 진행하는 것이다. 비동기(Asynchronous) 프로그래밍 프로그램의 주 실행 흐름을 멈추어서 기다리는 부분 없이 바로 다음 작업을 실행할 수 있게 하는 방식 코드의 실행 결과 처리를 별도의 공간에 맡겨둔 위 결과를 기다리지 않고 바로 다음 코드를 실행하는 병렬처리 방식 보통 네트워크 작업이 사용..

Programming/Swift 2018.06.25

[Xcode] Localizable.strings 파일 에러 찾기

iOS나 macOS에서 동작하는 프로그램을 만들 때는 Xcode를 사용한다.Xcode에서는 다양한 언어 환경에서도 사용할 수 있도록 다국어를 제공하는데, 원하는 다국어를 적용하게 되면 Localizable.strings 파일이 국가별로 생성된다. 이 파일에서는 string형의 키와 값이 있는데, 여러 다국어가 있을 때 하나의 키로 앱 내에서 사용하면 된다. "key" = "value"; 근데 이 파일에서 위의 형식을 따르지않으면 오류가 발생하게 되는데 매우 불친절 하게도.. 어느 라인에서 해당 문제가 발생하였는지는 알려주지않는다. Localizable.strings 파일 에러 찾기!!! 1. terminal.app 오픈command+space bar 하면 나오는 Spotlight 검색으로 더 빨리 실행할..

Programming/iOS 2018.06.05

[iOS/Swift 3.0] UITableview 알아보기 - DataSource & Delegate

TableView 알아보기2 Tableview API 테이블뷰 자체는 UITableView클래스의 인스턴스이다. UITableViewController는 테이블뷰를 관리하고 선택 관리, 행 편집, 테이블 구성 등과 같은 많은 지원을 추가한다. 이 추가 지원은 테이블 기반 인터페이스를 만들고 초기화하기 위해 작성하는 코드의 양을 최소화하기 위한 것이다. 이 클래스를 직접 사용하지 않고 UITableViewController의 하위 클래스를 정의하여 사용자 정의 behavior를 추가한다. DataSource & Delegate UITableView 객체는 DataSource와 Delegate를 갖는다. MVC(Model-View-Controller)패턴에 따라 dataSource는 앱의 데이터 모델과 ta..

Programming/iOS 2018.06.01

[iOS.Swift3.0] UITableView 알아보기 - 기본

TableView 알아보기 테이블뷰는 iOS앱에서 가장 많이 볼 수 있는 형태의 인터페이스이다. 테이블뷰는 섹션으로 구별될 수 있는 여러 행의 스크롤이 가능한 데이터 목록을 제공한다. 테이블뷰의 용도 사용자가 계층적으로 구조화된 데이터를 탐색하게 하기 위함 색인된 항목 목록 표시 시각적으로 구별되는 그룹으로 세부 정보와 컨트롤 표시 선택할 수 있는 옵션 목록 제시 위의 네가지 외에도 많은 용도로 사용한다. 테이블뷰 스타일 테이블뷰의 스타일에는 두가지가 존재한다. Plain Table Views plain(혹은 regular) 스타일은 화면을 가로질러 늘어지는 행을 표시하며 기본적으로 흰색 배경 색상을 갖는다. plain table은 하나, 혹은 그 이상의 섹션을 가질 수 있다. 섹션은 하나, 혹은 그 이..

Programming/iOS 2018.06.01

[iOS/Swift3.0] Swift FCM Closed App Push Notification Click Event

swift fcm closed app push notification click event APNs로 되어있던 프로젝트를 FCM으로 바꾸면서 푸시 테스트를 몇번씩 진행을 하는데 앱을 강제 종료한 뒤 (홈버튼을 두번 눌러 앱을 날리는 것) 푸시를 받아 클릭하면 앱이 실행되고 그 이후의 동작을 하지않는 것을 발견하였다. 앱이 terminated/closed된 이후에도 푸시 클릭 이벤트를 받아 해당 링크로 갈 수 있게 하기 위해서는 delegate 메소드에 원하는 코드를 추가해야한다. AppDelegate에 UNUserNotificationCenterDelegate를 추가한 뒤 아래 메소드를 추가한다. userNotificationCenter(_, didReceive, withCompletionHandler)..

Programming/iOS 2018.04.23

[iOS/Swift] FCM 메세지 수신, 포그라운드 앱에서 데이터 메시지 처리하기

최근에 프로젝트에 FCM을 도입하였다.기존에 APNs로 되어있는 것에서 FCM 토큰을 받아 로그인 시 넘겨 푸시서비스를 이용하는데postman 프로그램 (https://www.getpostman.com) 에서 테스트할 때는 백그라운드, 포그라운드 모두 수신이 잘 되었었고 푸시 메세지 클릭하면 로직대로 잘 이동을 했었다. 그런데 서버 담당자가 만든 프로그램 -> FCM -> 휴대폰 푸시 수신으로 진행할 당시 포그라운드모드로 테스트를 진행하였는데푸시를 수신해서 클릭하면 화면 링크로 이동을 해야하는데, 그렇지않고 다른 화면으로 이동 후 원래 화면으로 돌아와야 푸시 수신을 알라내고 이동하는 오류가 있었다. FCM 공식 문서에서 내용을 확인할 수 있는데 일부 내용은 아래와 같다. 앱이 포그라운드 상태일 때 APN..

Programming/iOS 2018.04.12

[iOS/Swift3.0] 디바이스언어와 languageCode가 다를 때

Swift Language 내가 만든 앱 중 디바이스에 설정된 언어코드를 가져와 로그인 시 서버로 언어 코드를 넘기는 기능이 있었다. 그런데 사용자 중 iPhone X에서 앱 기능 중 일부가 영어로만 뜨는 문제가 발생해 급하게 패치를 하였다. 확인결과 iOS10에서는 해당 오류가 발생하지않았는데, iOS11부터 발생한 것으로 보여지는 것 같다. 그런데 다른 앱에서는 잘되는데.. 왜 이 앱에서 그러는지는 아직 이해를 잘 못하겠다. 가장 큰 문제는 디바이스언어가 ko, jp 등의 언어를 설정했음에도 Locale.current.languageCode로 가져오면 en만 뜨는 문제가 있었다.또 Locale.current.regionCode를 하면 현재 있는 곳이 한국이기에 ko_KR이었던가 en_KR로 떴던 것 ..

Programming/iOS 2018.04.12

[iOS/Swift3.0] iOS10 apns키로 FCM 적용하기

ios 10 , FCM, apns key ios 10 can't receive fcm message 메세지가 받아지지않는다면 확인해야할 사항 APNs 인증서 발급받기 키체인 > 인증서 지원 > 인증 기관에서 인증서 요청(Apple 개발자로 등록된 계정으로 요청) developer.apple.com App IDs > 테스트 할 앱 등록, push notification 설정 CSR파일 등록 cer 파일 다운로드 후 실행 (키체인에 자동 등록됨) APNs 키 발급받기 apple 개발자 페이지에서 Keys> All > Create a New Key check APNs (max 2 key) Provisioning Profile 등록 후 실행 App Build Settings project > Build Sett..

Programming/iOS 2017.09.18

[IOS/SWIFT3.0] UIScrollView Programmatically in Swift3.0

UIScrollView Programmatically in Swift3.0이미 많은 뷰들이 있었는데 거기에 scrollview가 추가하려고했다대부분 autolayout으로 설정을했는데 나는 그렇지 않아서 autolayout을 설정하면 안보이는 문제가.. 출처는 찾아서 추가하겠습니다..... (I will find and add source) we want scrollview and show it! (if you already have many view objects..) move to storyboard drag UIScrollView and drag UIView in UIScrollView setting coordinate (drag or input x, y) move to ViewController...

Programming/iOS 2017.08.25
728x90
반응형