App Client에서 FileUpload 하는 방법은 multipart/form-data octet-stream으로 나눠집니다. Alamofire 를 활용하여 multipart/form-data 파일 업로드를 구성하면 다음과 같이 구성할 것입니다. 업무를 하다보면 간혹 파일 업로드를 octet-stream으로 요구 할 때가 있습니다. octet-stream 파일 업로드는 위의 multipart/form-data 와 동일한 방식으로 구성하되 header에 content-type을 application/octet-stream 을 추가로 선언하면 됩니다. 마무리 간단히 파일 업로드 하는 방법에 대해서 알아봤습니다. octet-stream , multipart/form-data 방식으로 파일 업로드 시 도움이..
STOMP을 Swift 환경에서 사용하는 방법에 대해서 알아보겠습니다. API DESC StompClientLib https://github.com/WrathChaos/StompClientLib 위에 명시된 라이브러리를 Android .gradle 에 dependencies 합니다. STOMP Client STOMP Client 사용법은 다음과 같이 나눌 수 있습니다. // 1. INIT let url = NSURL(string: "ws://[도메인]/connect/websocket") let intervalSec = 1.0 public var soketClient = StompClientLib() // 2. CONNECT func registerSocket(){ if(soketClient.isConne..
iOS Shared Extention App Build IssueiOS Xcode 에서 제공해주는 Extention 중에 Share Extension을 사용하면서 발생한 이슈를 공유 하려고 합니다.먼저 Share Extension 이 무엇일까요? 웹 브라우저인 사파리, 크롬 등을 사용하면 '공유하기' 버튼을 발견할 수 있으면 그 버튼을 누를 시 공유할 앱을 선택하라고 나옵니다. 공유할 앱 대상으로 지정되도록 도와주는 기능이 Share Extension 기능입니다.자세한 설명은 Apple Developer 에서 확인할 수 있습니다. 무슨 문제가 발생하였는가? iOS Shared Extention 을 적용 후 배포를 위한 Build 시 위와 같은 이슈가 발생하였습니다.무엇이 문제였을까요?iOS Shared ..
iOS 이메일 보내는 방법을 공유하겠습니다. iOS 이메일을 보내려면 MessageUI 가 필요합니다. 시작하기 ■ 사용자가 이메일 기능을 사용 가능한지 체크합니다.주의사항 iOS 이메일을 보내기 테스트 시 시뮬레이션에서는 동작하지 않으며 iOS 디바이스(iPhone)에서 이메일 테스트 해야합니다.import Foundation import UIKit import MessageUI class WelcomeViewController: UIViewController, MFMailComposeViewControllerDelegate { override func viewDidLoad() { super.viewDidLoad() if !MFMailComposeViewController.canSendMail(..
Apple 정책으로 인한 AppStore 배포를 거부한 경우 있으신가요?배포는 해야하는데 Apple에서는 거부하면 배포 못하는게 아닐지 걱정할 수 있는데요. Apple에서는 '엔터프라이즈(Enterprise)' 계정이 있으면 자체적으로 다운 받을 수 있도록 제공하고 있습니다. 준비사항다음과 같은 과정으로 내부 배포용 앱을 준비합니다.1. 엔터프라이즈(Enterpirse) 계정 준비 2. 앱 배포 시 Enterprise로 선택합니다. 3. 빌드 완료 후 export 된 ipa 파일 정보를 갖고있는 Manifest.plist 준비합니다. 4. 배포할 서버에 .ipa와 .plist 을 등록합니다. 1. 엔터프라이즈 계정 준비내부 배포용 앱을 만들기 위해서는 우선 엔터프라이즈(Enterprise) 계정이 있어야..
클로저에 대해서 공부한 내용을 요약 정리 했습니다. 클로저란 무엇일까? 클로저는 함수를 객체로 사용하는 것을 클로저(Closer)라고 합니다. 클로저?클로저는 함수 객체를 말합니다.클로저의 형태는 함수나 코드 블록을 포함합니다.클로저가 정의된 콘텍스트까지 포함합니다. 1. 함수 타입1234567//함수 정의func sayHI(){ print("Hi")}//함수참조let hi = sayHI()hi 함수 객체를 참조 변수로 사용할 때의 타입을 말합니다. 함수타입은 파라미터로도 사용할 할 수 있습니다. 정리하자면, 함수 타입은 함수의 구성 요소의 파라미터, 반환 타입으로 구성됩니다. 12345678// 함수타입 (Int, Int) -> Intfunc add(i: Int, j: Int) -> Int{ retur..
앱을 사용하다보면 iOS 인앱 평가해달라는 다이얼로그를 보일 때가 있습니다. 이건 어떻게 구현할까요? StoreKit 을 활용하면 쉽게 구현할 수 있습니다. 인앱 평가 추가사용 방법은 간단합니다. StroeKit 을 import 하고 SKStoreReviewController 을 호출해주면 평가 다이얼로그가 보입니다.swift import StroeKit override func viewDidLoad() { super.viewDidLoad() if #available(iOS 10.3, *){ SKStoreReviewController.requestReview() } }주의 할 점은 SKStoreReviewController 은 iOS 10.3 이후부터 가능합니다. 정리SKStoreReviewContr..
iOS에서 GCM으로 푸시 하는 방법에 이어서 FCM으로 Notification 구현해 보겠습니다.먼저는 FCM 이 무엇인지 알아야겠지요?FCM 은 Firebase Cloud Messaging 으로 Firebase 콘솔에서 푸시를 보낼 수도 있으며, 서버에서 푸시를 보낼 수 있도록 지원하는 서비스입니다. Google에서는 GCM에서 FCM 으로 변경할 것을 권면하고 있으며 대부분 협업에서 FCM으로 변경하고 있습니다. FCM 설정 시나리오FCM 설정 시나리오는 다음과 같습니다.Firebase 콘솔에서 앱 등록구성 파일 다운로드 (GoogleService-Info.plist)Firebase SDK 추가pod initpod 'Firebase/Core'pod 'Firebase/Messaging'pod inst..
- push
- DI
- 선교
- 점수판
- view
- IT
- 패턴
- Kotlin
- java
- 안드로이드
- Android
- 디자인패턴
- 고시문헬퍼
- missionchina
- 알고리즘
- IOS
- MCC
- 스코어헬퍼
- missioon
- RXjava
- swift
- 코틀린
- 고시문
- 임용고시
- 탁구
- Android Studio
- flutter
- issue
- 미션차이나센터
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |