# UnityゲームにLINEログインを組み込む

プロジェクトをセットアップすると、既存のUnityゲームにLINE SDK for Unityをインポートでき、LINEログインを活用して、アプリのユーザーエクスペリエンスを向上できます。

# SDKを取得する

# GitHubからダウンロードする

最新のLINE SDK for Unityを取得するには、GitHubのReleasesページ (opens new window)から.unitypackageファイルをダウンロードします。

# プロジェクトにインポートする

注意

LINE SDK for Unityをプロジェクトにインポートする前に、プロジェクトのバックアップを作成するか、バージョン管理システムに保存してください。

Unityプロジェクトを開いたまま、ダウンロードした.unitypackageファイルをダブルクリックします。以下のように、パッケージ内のすべてのファイルをインポートします。

Import Unity package

# LineSDKプレハブをシーンに追加する

パッケージをインポートすると、[Project]パネルで、Assets/LineSDK/に[LineSDK]プレハブが表示されます。LINEログインを追加するシーンの[Hierarchy]パネルに、プレハブをドラッグしてください。

Add LineSDK prefab

次に、シーンのLineSDK GameObjectをクリックし、[Channel ID]にLINEログインのチャネルのチャネルIDを入力します。

Set Channel ID

LINEログインのチャネルのIDを、LINE Developersコンソールで確認します。チャネルを作成していない場合は、LINE Developersコンソールで作成します。チャネルを作るときは、プロバイダーを選択または作成してください。

# プレイヤー設定を更新する

LINEログインを組み込む前、またはLINE APIをゲームで使用する前に、以下の手順に従ってプロジェクトのプレイヤー設定が正しいことを確認してください。

# Androidエクスポートの設定

  1. File] > [Build Settings]を選択します。
  2. Player Settings]をクリックします。
  3. Company Name]および[Product Name]に、LINE DevelopersコンソールのLINEログインのチャネルの[LINEログイン設定]タブにあるAndroidの[パッケージ名]と同じ値を入力します。
  4. Android settingsタブ] > [Other Settings]を選択します。
  5. Package Name]に、LINE DevelopersコンソールのLINEログインのチャネルの[LINEログイン設定]タブにあるAndroidの[パッケージ名]と同じ値を入力します。
  6. Minimum API Level]を、[API level 19]以上に設定します。
  7. Publishing Settings]を選択して、[Custom Gradle Template]を有効にします。

# iOSエクスポートの設定

  1. File] > [Build Settings]を選択します。
  2. Player Settings]をクリックします。
  3. iPhone, iPod Touch and iPad settingsタブ] > [Other Settings]を選択します。
  4. Bundle Identifier]に、LINE DevelopersコンソールのLINEログインのチャネルの[LINEログイン設定]タブにある[iOS bundle ID]と同じ値を入力します。
  5. Target minimum iOS Version]を、10.0以上に設定します。
  6. (任意)CocoaPodsの代わりにCarthageを使用する場合は、以下の操作を行います。
    1. Edit] > [Preferences]を選択します。

      Unity Preferences]が表示されます。

    2. LINE SDK] > [iOS Dependency Manager]で、「Carthage」を選択します。

      Unity Preferences

LINE SDK for Unity iOSで使用される依存管理マネージャーについて詳しくは、「プロジェクトを設定する」を参照してください。

# LINEを使用するログイン方法を実装する

LineSDK (GameObject)が存在するシーンに、LINEを使用するログイン方法を実装できます。例:

using Line.LineSDK;

public class MyController : MonoBehaviour {
    public void LoginButtonClicked() {
        var scopes = new string[] {"profile", "openid"};
        LineSDK.Instance.Login(scopes, result => {
            result.Match(
                value => {
                    Debug.Log("Login OK. User display name: " + value.UserProfile.DisplayName);
                },
                error => {
                    Debug.Log("Login failed, reason: " + error.Message);
                }
            );
        });
    }
}

現在、LINE SDK for Unityでは、iOSおよびAndroidのみがサポートされています。Unityエディターのプレイモードで実行すると、常にエラーが返されます。テストするには、シーンをiOSまたはAndroidデバイスにエクスポートしてください。

依存管理マネージャーとしてCocoaPodsを使用している場合は、ゲームをXcodeプロジェクトに作成した後、Unity-iPhone.xcodeprojファイルではなく、Unity-iPhone.xcworkspaceファイルを開いてください。