iOS 개발 환경 준비하기

개발 환경 구성

IDE 준비

iOS 개발을 하기 위해서는 기본적으로 맥 하드웨어와 OSX 운영체제, 애플 계정 및 애플에서 만든 Xcode IDE가 필요합니다.

애플계정 생성 및 Xcode 설치는 아래의 애플 공식문서를 참고하여 생성 및 설치토록 합니다.

PlayRTC iOS SDK 준비하기

Xcode 프로젝트 생성

  • File > New > Project > iOS > Application > Other > Empty 를 선택하여 빈 프로젝트 생성합니다.
  • Product Name을 선택. 이 문서의 예제에서는 MyApp으로 지정한것을 가정하고 설명합니다.

PlayRTC SDK 복사해 두기

아래의 링크를 통해 다운로드 받습니다.

다운로드 받고 압축을 풀면  1개의 a 확장자 파일,  1개의dat확장자 파일과 다수개의 h확장자를 가지는 헤더파일이 나오는데, 원하는 프로젝트에 다음과 같이 배치 하면 됩니다.

  • [PROJECT-ROOT]/PlayRTC/libs/icudtl.dat
  • [PROJECT-ROOT]/PlayRTC/libs/libsktplayrtc.universal.rxxxx.x.x.x.a
  • [PROJECT-ROOT]/PlayRTC/public/PlayRTC.h 및 기타 h 확장자 파일

이제 아래의 Xcode 빌드 환경을 준비 절차에 따라 복사해둔 SDK 파일을 빌드 환경에 포함토록  합니다.

Xcode 빌드환경 준비하기

위와 같이 SDK를 프로젝트 폴더에 복사하고 빌드 환경을 구성하도록 하여야 합니다.

Import PlayRTC SDK

이전 단계에서 프로젝트에 복사해둔 SDK 를 아래와 같이 프로젝트로 불러들여 빌드과정에 포함시킵니다.

  • Files > Add Files to “MyAPP”
  • [PROJECT-ROOT]/PlayRTC 폴더를 선택
    • Added folders > Create Groups 선택
    • Add to targets > MyApp 선택
  • Add 버튼 클릭

Linked Frameworks and Libraries

MyApp > Targets > MyApp > General > Linked Frameworks and Libraries에서 다음과 같이 링크된 라이브러리를 설정 합니다.

  • libsktplayrtc.x.x.x.a
  • UIKit.framework
  • Foundation.framework
  • OpenGLES.framework
  • Security.framework
  • VideoToolbox.framework
  • AudioToolbox.framework
  • CoreTelephony.framework
  • CoreFoundation.framework
  • AVFoundation.framework
  • CoreVideo.framework
  • GLKit.framework
  • CoreAudio.framework
  • CoreMedia.framework
  • CoreTelephony.framework
  • MobileCoreService.framework
  • SystemConfiguration.framework
  • CFNetwork.framework
  • CoreGraphics.framework
  • QuartzCore.framework
  • VideoToolbox.framework
  • libm.tbd
  • libc++.tbd
  • libstdc++.tbd
  • libicucore.tbd
  • libsqlite3.tbd

Build Settings

MyApp > Targets > MyApp > Build Settings에서 다음과 같이 설정합니다.

SDK는 32Bit, 64Bit가 동시에 작성될수 있는 유니버셜 버전입니다.

  • Architectures
    • Base SDK : Latest Stable iOS
    • Architecture : Standards architectures(armv7, arm64)
    • Build Active Architecture Only : NO
    • Valid Architecture :  armv7 armv7s arm64
  • IOS Deployment Target = 8.0 
  • Linking
    • Other Linker FLags : -ObjC
  • Apple LLVM 6.1 – Language
    • C Language Dialect : C99[-std=c99]
  • Apple LLVM 6.1 – Language – C++
    • C++ Language Dialect : C++11[-std=c++11]

Build Phases

MyApp > Targets > MyApp > Build Phases에서 다음과 같이 설정합니다.

  • Copy Bundle Resource
    • icudtl.dat …in PlayRTC/libs

XCode 7.x (iOS 9)에서 필요한 추가 설정

iOS 9개발을 위한 최신 XCode 7.x에서 추가적인 설정이 필요합니다.

Build Options

MyApp > Targets > MyApp > Build Settings에서 다음과 같이 설정합니다.

  • Build Option
    • Enable BitCode : NO
info.plist

My Project Folder > info.plist 파일을 열고 다음 항목 추가 합니다.

<key>NSAppTransportSecurity</key>
<dict>
  <key>NSAllowsArbitraryLoads</key>
  <true/>
</dict>

이 값은 PlayRTC 서비스와 SSL통신을 하기위한 권한을 허용토록 합니다. 만약 추가하지 않으면 “CFNetwork SSLHandshake failed (-9824)” 과 같은 에러를 발생시킵니다.

Objective-C로 개발 준비 하기

PlayRTC SDK는 현재 Objective-C 언어로 구성되어있으며 위의 절차 대로 준비했다면 Objective-C로 개발하는 모든 준비가 완료된 상태입니다.

Swift로 개발 준비

PlayRTC를 Swift 언어로 개발하기 위해서는 다음과 같이 MyAppProjectName-Bridging-Header.h파일을 작성하고, PlayRTC iOS SDK의 헤더파일을 임포트 하여야 합니다. 이 파일은 아래의 디렉토리에 위치시키도록 합니다.

  • [PROJECT-ROOT]/MyApp/MyAppProjectName-Bridging-Header.h

그리고 실제 파일에 들어갈 내용은 아래와 같습니다.

#ifndef MyAppProjectName_Bridging_Header_h
#define MyAppProjectName_Bridging_Header_h

#import "PlayRTC.h"
#import "PlayRTCData.h"
#import "PlayRTCDataHeader.h"
#import "playRTCDataObserver.h"
#import "PlayRTCDataSendObserver.h"
#import "PlayRTCDefine.h"
#import "PlayRTCFactory.h"
#import "PlayRTCMedia.h"
#import "PlayRTCObserver.h"
#import "PlayRTCSettings.h"
#import "PlayRTCVideoView.h"

#endif

헤더 파일을 프로젝트로 임포팅한 후 아래와 같이 헤더 파일을 빌드 과정에 지정합니다.

  • MyApp > Targets > MyApp > Build Settings > Swift Compiler – Code Generation > Objective-C Bridging Header
  • 헤더 파일 지정

보다 더 자세한 내용은 아래의 링크를 통해 확인합니다.

예제 앱 다운로드

이제 예제앱을 다운로드 받고 준비 해 봅시다.

예제앱은 아래를 통해 압축파일 형태로 다운로드 받을 수 있습니다.

혹은 PlayRTC GitHub 저장소에서 소스코드 관리 방식인 git을 통해 클론받을 수 있습니다.

$ git clone https://github.com/playrtc/PlayRTC-iOS-Code-Samples

이로써 모든 튜토리얼을 개발하기 위한 모든 환경이 갖추어졌습니다. 다음장을 통해 본격적으로 영상/음성 웹앱을 만들어 보도록 하겠습니다.

 

Play RTC

서비스 체험

Play RTC build PlaygrOund

나만의 플레이그라운드를 만들어 친구를 초대해보세요 !

www.playrtc.com/

번거로운 가입이나 설치 없이ID만 만들어서 영상통화나 파일 공유, 채팅 서비스를 무료로 즐겨보세요.

 

Play RTC

서비스 체험

개설한 Playground 주소를 복하해서 친구에게 보내조세요. 친구가 Playground에 접속하면 이곳에 친구의 영상과 음성이 나타납니다. Waiting..

Photo

X
이미지 미리보기
이미지
 

서비스 체험

 

서비스 체험

서비스 체험은 크롬과 파이어폭스 브라우저에 최적화되어 있습니다.
크롬 또는 파이어폭스 브라우저를 설치 후 다시 이용해주세요.