- ํด๋น SDK๋ iOS 8.0 ์ด์๋ถํฐ ์ง์ํฉ๋๋ค.
- ํด๋น SDK๋ Simulator์์๋ ์ง์ํ์ง ์์ต๋๋ค. Device๋ฅผ ํตํด ์ฌ์ฉํด ์ฃผ์ธ์.
-
WECANDEO Player๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํด์๋ ํ์ฑํ ๋ WECANDEO ๊ณ์ ์ด ์์ด์ผ ํฉ๋๋ค.
๋จผ์ WECANDEO ํํ์ด์ง์์ ๊ณ์ ์ ์์ฑํ๊ณ ํ๋(Trial, Standard, Enterprise)์ ๊ฐ์ ํ์ฌ ๊ณ์ ์ ํ์ฑํ ํฉ๋๋ค.
ํ์ฑํ ๋ ๊ณ์ ์ ์ด์ฉ์ค์ธ ์ํ์ด VideoPack์ธ ๊ฒฝ์ฐ VOD Player๋ฅผ, LivePack์ธ ๊ฒฝ์ฐ Live Player๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค. -
WECANDEO API๋ฅผ ์ฌ์ฉํ์ฌ ํ์ํ ๊ฐ์ ์กฐํํฉ๋๋ค.
- WECANDEO API๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํด ํ์ํ API Key๋ ํ์ฑํ ๋ ๊ณ์ ์ CMS์์ ํ์ธ ๊ฐ๋ฅํฉ๋๋ค. [ CMS > ๊ณ์ ๊ด๋ฆฌ > ๊ฐ๋ฐ์ API ]
-
VOD Player
- videoKey: ๋์์ ๋ฐฐํฌ ์ฝ๋ ์กฐํ API๋ฅผ ํธ์ถํ๋ฉด videoKey๋ฅผ ํ์ธํ ์ ์์ต๋๋ค.
- DRM ์ฌ์์ ์ํ ๊ฐ
- gid : [ CMS > ๋ถ๊ฐ์๋น์ค > Wecandeo DRM ] ๋ฉ๋ด์์
gid๋ฅผ ํ์ธํ ์ ์์ต๋๋ค. - secretKey : [ CMS > ๋ถ๊ฐ์๋น์ค > Wecandeo DRM ] ๋ฉ๋ด์์
secretKey๋ฅผ ํ์ธํ ์ ์์ต๋๋ค. - packageId : ๋ฐฐํฌ ํจํค์ง ๋ชฉ๋ก ์กฐํ API๋ฅผ ํธ์ถํ๋ฉด
packageId๋ฅผ ํ์ธํ ์ ์์ต๋๋ค. - videoId : ๋์์ ๋ชฉ๋ก - ๋ฐฐํฌ ํจํค์ง๋ณ ์กฐํ API๋ฅผ ํธ์ถํ๋ฉด
videoId๋ฅผ ํ์ธํ ์ ์์ต๋๋ค. - client : ์ถ๊ฐ์ ์ธ ์ฌ์ฉ์ ์ํธํํค, ์ฌ์ฉ์๊ฐ ์์์ ๊ฐ์ผ๋ก ์ค์
- gid : [ CMS > ๋ถ๊ฐ์๋น์ค > Wecandeo DRM ] ๋ฉ๋ด์์
- DRM ๊ธฐ๋ฅ์ ์ฌ์ฉํ๊ธฐ ์ํด์๋ ์ฌ์ฉ ๊ฐ๋ฅํ ํ๋(Enterprise)์ ๊ฐ์
๋์ด ์์ด์ผ ํ๋ฉฐ,
๊ด๋ฆฌ์๋ฅผ ํตํด ํด๋น ๊ธฐ๋ฅ์ด ํ์ฑํ ๋์ด ์์ด์ผ ํฉ๋๋ค.
-
Live Player
- liveKey : [ CMS > ๋ผ์ด๋ธ ์ฑ๋ > ์ฑ๋ ๋ฆฌ์คํธ > ์ฑ๋ ์ ํ > ๋ฐฐํฌ ์ฝ๋ ] ๋ฉ๋ด์์
liveKey๋ฅผ ํ์ธํ ์ ์์ต๋๋ค.
- liveKey : [ CMS > ๋ผ์ด๋ธ ์ฑ๋ > ์ฑ๋ ๋ฆฌ์คํธ > ์ฑ๋ ์ ํ > ๋ฐฐํฌ ์ฝ๋ ] ๋ฉ๋ด์์
- Xcode์ [Framework... ] ํญ๋ชฉ์ โWecandeoSDK.frameworkโ๋ฅผ ์ถ๊ฐํฉ๋๋ค.
- iOS9 ์ด์์์๋ ATS(App Transport Security) ๊ธฐ๋ฅ์ด ์ ๊ณต๋ฉ๋๋ค.
ATS ๊ธฐ๋ฅ ํ์ฑํ ์, HTTP ๋ฐฉ์์ด ์ ํ๋์ด ์ ์์ ์ผ๋ก ์์์ด ์ฌ์๋์ง ์์ต๋๋ค.
๋ฐ๋ผ์ Info.plist ํ์ผ์ ์๋์ ํญ๋ชฉ์ ์ถ๊ฐ ์ ์ฉํ์ฌ ์ฌ์ฉ ๋ฐ๋๋๋ค.

- iOS9 ์ด์์์๋ LLVM ์ปดํ์ผ๋ฌ์์ Bitcode๋ฅผ ์์ฑ์ ์ง์ํฉ๋๋ค.
ํด๋น SDK๋ Bitcode๋ฅผ ์ง์ํ์ง ์์ผ๋ฉฐ, Bitcode๋ฅผ ํ์ฑํ ์ ์์์ด ์ ์์ ์ผ๋ก ์ฌ์๋์ง ์์ต๋๋ค.
๋ฐ๋ผ์ Target > Build Setting > Build Options > Enable Bitcode๋ฅผ โNOโ๋ก ์ค์ ํ์ฌ ์ฌ์ฉ ๋ฐ๋๋๋ค.

- (PlayerController *)setPlayerControlWithGid:(NSString *)gId packageId:(NSString *)pId videoId:(NSString *)vId videoKey:(NSString *)videoKey hMac:(NSString *)hMac
- DRM Player ๊ฐ์ฒด ์์ฑ
- gId : ๋ฐ๊ธ๋ฐ์ gid ๊ฐ
- pId : ๋ฐ๊ธ๋ฐ์ package id ๊ฐ
- vId : ๋ฐ๊ธ๋ฐ์ video Id ๊ฐ
- videoKey : ๋ฐ๊ธ๋ฐ์ video Key ๊ฐ
- hMac : ์์ฑ๋ HMAC ๊ฐ
- DRM Player ๊ฐ์ฒด ์์ฑ
- (PlayerController *)setPlayerControl:(NSString *) videoUrl
- Non DRM Player ๊ฐ์ฒด ์์ฑ
- videoUrl : ์์ ์ฌ์ URL
- Non DRM Player ๊ฐ์ฒด ์์ฑ
- (BOOL)isPlaying
- ์ฌ์์ฌ๋ถ
- (void)play
- ์ฌ์
- (void)pause
- ์ผ์์ ์ง
- (void)stop
- ์ ์ง
- (CMTime)duration
- ์ ์ฒด์๊ฐ ํ์ธ
- (CMTime)currentTime
- ํ์ฌ์๊ฐ ํ์ธ
- (void)moveSeek:(Float64)sec completionHandler:(void (^)(BOOL) finished)
- sec์ด๋ก ์ด๋
- (void)backwawrd:(CGFloat)sec
- sec์ด ๋ค๋ก ์ด๋
- (void)forwawrd:(CGFloat)sec
- sec์ด ์์ผ๋ก ์ด๋
- (BOOL)isMute
- ์์๊ฑฐ ์ฌ๋ถ ํ์ธ
- (void)mute
- ์์๊ฑฐ
- (void)unMute
- ์์๊ฑฐ ํด์
- (CGFloat)getVolume
- ์๋๊ฐ
- (void)setVolume:(CGFloat)volume
- ์๋์กฐ์
- (void)setVideoGravity:(AVLayerVideoGravity)gravity
- gravity ์ค์
- (AVLayerVideoGravity)getVideoGravity
- ์ค์ ๋ gravity ์กฐํ
- (void)didPlayerItemStatusReadyToPlay
- ์ฌ์์ค๋น ์๋ฃ
- (void)playerTimeObserver:(CMTime)time
- ์ฌ์ ์ค 1์ด๊ฐ๊ฒฉ์ผ๋ก ํธ์ถ
- (void)didPlayerItemStatusCompleted
- ์ฌ์ ์๋ฃ
- (NSString *)hmacWithGid:(NSString *)gid scretKey:(NSString *)scretKey client:(NSString *)client
- hmac ์กฐํ
- gid : ๋ฐ๊ธ๋ฐ์ gid๊ฐ
- scretKey : ๋ฐ๊ธ๋ฐ์ SecretKey(HMAC) ๊ฐ
- client : ํ์ฌ๋๋ฉ์ธ
- hmac ์กฐํ
