PLUG iOS 適用ガイド
Quick Start
最新バージョンをダウンロード
PLUG SDKを使用する場合は、XCodeで次のように開発環境を設定します。
Build SettingsのOther Linker Flagsに -ObjCオプションを追加します。
ダウンロードしたサンプルプロジェクトに含まれている次のライブラリを、プロジェクトに追加します。
SDWebImage
FLAnimatedImage
o NAVER IDでログイン
Build PhasesのLink Binary With Librariesに次のライブラリを追加します。追加したライブラリのStatusはRequiredに設定します。
AVKit.framework
AVFoundation.framework
MobileCoreServices.framework
SystemConfiguration.framework
MediaPlayer.framework
AVFoundation.framework
CoreMedia.framework
AssetsLibrary.framework
Security.framework
ImageIO.framework
QuartzCore.framework
SafariServices.framework
WebKit.framework
ReplayKit.framework(ライブラリのStatusをOptionalに設定します。)
Info.plistのユーザー権限獲得オプションを追加します。
NSCameraUsageDescription
NSPhotoLibraryUsageDescription
3. 初期化
PLUG SDKが対応する言語に応じて、次のようにPLUG SDKを初期化します。
3.1 PLUG SDK初期化(韓国語のみ対応 - NAVER Cafe)
韓国語のみ対応のPLUG SDKを初期化する時は、次のような初期化情報を設定します。
NAVER IDでログイン開発者センターにてアプリケーションを登録する時に受け取ったクライアントID(ClientId)とクライアントシークレット(ClientSecret)
NAVER Cafeでカフェを開設し、受け取ったCafe ID
NAVER IDでログイン開発者センターにてアプリケーションを登録する時に入力したURL Scheme
PLUGが上に乗る親ViewController
チャンネルコード(韓国語チャンネルのみを使用する時は、KOREANに設定)
3.2 PLUG SDK初期化(外国語のみ対応)
外国語のみ対応のPLUG SDKを初期化する時は、次のような初期化情報を設定します。
consumerKey: コミュニティを開設して受け取ったコンシューマーキー(Consumer Key)
consumerSecretKey: コミュニティを開設して受け取ったコンシューマーシークレットキー(Consumer Secret Key)
cummunityNo: • コミュニティを開設して受け取ったコミュニティNo(communityNo)
loungeNo: ラウンジを開設して受け取ったラウンジNo(loungeNo)
PLUGが上に乗る親ViewController
4. PLUG SDK開始
初期化が完了したら、PLUG SDKを実行します。
4.1 presentMainViewController: メソッド
presentMainViewController: メソッドは、PLUG SDKを開始するメソッドです。次の例は、presentMainViewController: メソッドを実装した例です。
NCSDKManager クラス NCSDKManagerクラスはPLUG SDKを制御するクラスです。NCSDKManagerクラスで制御できる機能に関する詳細は、PLUG SDK詳細ガイドの「主な機能の詳細説明」をご参照ください。
4.2 横画面モード、縦画面モード
PLUG SDKは横画面モードと縦画面モードのどちらも対応しています。次の例は、PLUG SDKを横画面モードで実行する例です。
NAVER IDでログイン時、NAVERアプリを使用
NAVER IDでログインする時に、NAVERアプリを使用する場合は次のように追加情報を設定します。
1. NAVER IDでログインにアプリケーションを登録する時に入力したURL Schemeを、プロジェクトに登録します。 2. PLUGを初期化する時に、NAVERアプリログインを許可するように、次のように設定します。
3. NAVER IDでログインが完了すると、PLUGにログイン情報が設定できるようになり、次のようにAppDelegateを設定します。
4. アプリケーションでNAVERアプリを開くことができるように、次のような設定をInfo.plistファイルに追加します
基本チャンネルの言語設定
PLUGの言語別コミュニティであるチャンネルの基本チャンネルは、デバイスに設定された言語で設定されます。基本チャンネルを特定の言語に設定したい場合は、setChannelCode: メソッドを使用します。
次の例は、基本チャンネルを韓国語に設定した例です。
グローバルコミュニティと韓国内NAVER Cafeに対応するPLUGの初期化
グローバルコミュニティと韓国内NAVER Cafeの両方に対応する時は、韓国内NAVER Cafeに対応するPLUGの初期化と、グローバルコミュニティに対応するPLUGの初期化をすべて適用します
Files and Folders
Dependent Libraries
• PLUG SDKを使用する場合は、次のライブラリをプロジェクトに追加し、一緒にビルドする必要があります。ライブラリはサンプルプロジェクトに含まれています。NAVER IDでログイン(4.0.7バージョン)
AFNetworking(3.1.0 バージョン)
o AFNetworking 2.xバージョンと3.xバージョンをすべて使用できます。PLUG SDKテストは、AFNetworking 3.1.0バージョンで実施しました。
SDWebImage(3.8.2 バージョン)
FLAnimatedImage-(1.0.12 バージョン)
ApiGateway-1.5.0
PLUGの開始と終了
PLUGを特定のタブが選択された状態で開始、または終了します。
presentMainViewController: メソッド
PLUGを実行します。
次の例は、presentMainViewController: メソッドを実装した例です。
presentMainViewControllerWithTabIndex: メソッド
特定のタブが選択された状態でPLUGを始めます。
次の例は、presentMainViewControllerWithTabIndex: メソッドを実装した例です。
presentMainViewControllerWithArticleId: メソッド
掲示板タブに特定の投稿が見える状態でPLUGを始めます。
次の例は、presentMainViewControllerWithArticleId: メソッドを実装した例です。
presentArticlePostViewControllerWithType: メソッド
画像ファイルや動画ファイルが添付された掲示板投稿画面で、PLUGを開始します。
次の例は、presentArticlePostViewControllerWithType: メソッドを実装した例です。
dismissMainViewController: メソッド
PLUGを終了します。
次の例は、dismissMainViewController: メソッドを実装した例です。
横画面モード、縦画面モード
PLUGは横画面モードと縦画面モードのどちらも対応しています。
次の例はPLUGを縦画面モードで実行した例です。
次の例はPLUGを横画面モードで実行した例です。
透明度調節
PLUG画面の左上の透明度調節スライダーで透明度を調節すると、ゲームとカフェを同時に使用できます。
透明度調節スライダーの使用の有無は、disableTransparentSlider: メソッドで設定します。
disableパラメータの値をYESで設定すると、透明度調節スライダーを使用できます(既定値:YES)。
次の例は、透明度調節スライダーを使用するように実装した例です。
次の例は、透明度調節スライダーを使用しないように実装した例です。
ウィジェット
ウィジェットは、PLUGの折り畳みボタンをタップすると自動で画面に表示される要素です。ウィジェットでゲーム内のどこでもPLUGを利用できます。
ウィジェットの表示
PLUGの折り畳みボタンをタップした時に、ウィジェットを表示するかは、showWidgetWhenUnloadSDKプロパティで設定します。
showWidgetWhenUnloadSDKプロパティの値をYESに設定すると、PLUGウィンドウを折り畳む時にウィジェットが表示されます(既定値:YES)。
次の例はウィジェットが表示されるように実装した例です。
ウィジェット実行
ウィジェットを実行する場合は、startWidget: メソッドを使用します。
次の例は、ウィジェットを実行した例です。
ウィジェットを閉じる
ウィジェットを閉じる場合は、stopWidget: メソッドを使用します。
次の例は、ウィジェットを強制的に閉じる例です
ウィジェットの基本位置の設定
ウィジェットを最初に実行する時は、画面左の中央に表示されます。ウィジェットを最初に実行する時に表示される基本位置を設定する場合は、setWidgetStartPosition: メソッドと、andY: メソッドを使用します。
ただし、ユーザーがウィジェットを移動した後、ウィジェットが再び実行される時は、ユーザーが移動した最後の位置にウィジェットが表示されます。
次の例は、ウィジェットの基本位置を画面右側、上から20%の位置に設定した例です
画面キャプチャ
ウィジェットの画面キャプチャボタンをタップすると、ゲーム画面をキャプチャできます。
画面キャプチャボタン
画面キャプチャボタンをタップした時に、画面をキャプチャする機能はncSDKWidgetPostArticleWithImageメソッドで実装します。
次の例は、ユーザーがウィジェットで画面キャプチャボタンをタップすると、ncSDKWidgetPostArticleWithImageメソッドを呼び出すようにDelegateを登録した例です。
画面キャプチャの使用設定
useWidgetScreenShotプロパティで、画面キャプチャ機能の使用の有無を設定します。
useWidgetScreenShotプロパティの値をYESに設定すると、ウィジェットに画面キャプチャボタンが表示されます(既定値:YES)。
動画録画
ウィジェットの動画録画ボタンをタップすると、ゲーム画面を録画できます。
動画録画の使用設定
useWidgetVideoRecordプロパティで、動画録画機能の使用の有無を設定します。
useWidgetVideoRecordプロパティの値をYESに設定すると、ウィジェットに動画録画ボタンが表示されます(既定値:NO)。
録画完了処理
動画録画が完了した時に、処理する作業はncSDKWidgetSuccessVideoRecordメソッドで実装します
次の例は、ユーザーがウィジェットで動画録画ボタンをタップし、動画録画が完了するとncSDKWidgetSuccessVideoRecordメソッドを呼び出すようにDelegateを登録した例です。
動画録画
動画録画ボタンをタップすると、ゲーム中にゲーム画面を録画できます。
動画録画機能は、iOS 9.0以上のデバイスから対応しています。
ウィジェットの動画録画機能の使用
ウィジェットの動画録画ボタンをタップすると、ゲーム中にゲーム画面を録画できます。
動画録画の使用設定useWidgetVideoRecordプロパティで、動画録画機能の使用の有無を設定します。
useWidgetVideoRecordプロパティの値をYESに設定すると、ウィジェットに動画録画ボタンが表示されます(既定値:NO)。
iOS 9.0未満のデバイスでは、useWidgetVideoRecordプロパティの値をYESに設定しても、ウィジェットに動画録画ボタンが表示されません。
次の例は、動画録画機能を使用するように実装した例です。
録画完了Delegate
動画録画が完了した時に、処理する作業はncSDKWidgetSuccessVideoRecordメソッドで実装します。
次の例は、ユーザーがウィジェットで動画録画ボタンをタップし、動画録画が完了するとncSDKWidgetSuccessVideoRecordメソッドを呼び出すようにDelegateを登録した例です。
ゲームの動画録画機能の使用
ゲーム開発会社で動画録画ボタンを実装し、ゲーム画面を録画できます。
• 動画録画の開始と終了を直接呼び出せるコードは、NCSDKRecordManager.hファイルにあります。
動画録画の開始と終了
動画録画を開始する場合は、startRecordメソッドを使用します。
動画録画を終了する場合は、stopRecordメソッドを使用します。
動画録画Delegate
ゲーム開発会社のボタンで、動画を録画する時に発生するイベントを処理するコールバックDelegateは次のとおりです。
App Scheme 処理
ゲームでPLUGのホーム画面に表示されるバナー画像をタップすると、App Schemeに移動してゲーム機能を実行させることができます。
App Schemeに移動するバナー画像は、カフェの管理メニューで登録します。
App Schemeに移動するバナー画像をタップするとopenURL: メソッドを実行し、App Schemeを処理するように次の例のようにAppDelegateを設定します。
次の例は、App Schemeを処理するようにリスナーを実装した例です。
コールバックDelegate
コールバックDelegateを設定し、PLUGで発生するイベントを処理します。
コールバックDelegate登録
コールバックDelegateを処理するビューコントローラーを、NCSDKManagerクラスに登録します。
コールバックDelegate実装
PLUGでイベントが発生した時に、コールバックDelegateを通して呼び出すメソッドは次のとおりです。
ゲームIDの連携
ユーザーのゲームIDとCafe IDを連携して管理できます。連携したゲームIDとCafe IDのリストは、カフェの管理メニューから確認できます。
ゲームIDをCafe IDと連携する場合は、syncGameUserId: メソッドを使用します。
次の例は、ゲームIDとCafe IDを連携する例です。
テーマカラー変更
PLUGのテーマカラーを変更できます。
テーマカラーを変更する場合は、setThemeColor: メソッドとandTabBackgroundColor: メソッドを使用します。
themeColorCSString: • テーマで基本的に使用する色(既定値:#00c73c)
backgroundCSSString: • タブメニューの背景色(既定値:#44484e)既定値を使用することを推奨します。
注意 CSSカラー値にアルファ値を入れてはいけません
正しい例:
#ff9800
間違った例:
#e2ff9800
次の例は、テーマカラーを変更する例です。
リソース画像変更
NAVER CafeのPLUGライブラリに含まれたリソース画像は、次のように変更できます。
NaverCafeSDK.bundleパッケージにある画像をお好きな画像に変更します。
修正したパッケージをNAVER CafeのPLUGライブラリに適用し、プロジェクトをビルドします。
注意 画像を変更する時に、画像のサイズは既存の画像と同じ物を使用してください。
Last updated