- マルチプラットフォーム対応:iOS、tvOS、visionOS、Android、Editor、PC(Windows/Mac/Linux)、WebGL、UWP、PS4、PS5、Xbox One、Nintendo Switch。
- プリセットされたチャンネル情報を取得するためのシンプルな API を提供。
- iOS プラットフォームでは、ビルド時に
Info.plistにデフォルトチャンネルを自動追加(未設定の場合)。
以下のいずれかの方法を選択してください:
-
Unity プロジェクトの
Packages/manifest.jsonを編集し、scopedRegistriesセクションを追加してください:{ "scopedRegistries": [ { "name": "GameFrameX", "url": "https://gameframex.upm.alianblank.uk", "scopes": [ "com.gameframex" ] } ], "dependencies": { "com.gameframex.unity.getchannel": "1.3.2" } }scopesは、どのパッケージをこのレジストリから解決するかを制御します。com.gameframexで始まるパッケージのみがこのレジストリから取得されます。 -
manifest.jsonのdependenciesに直接追加:{ "com.gameframex.unity.getchannel": "https://github.com/gameframex/com.gameframex.unity.getchannel.git" } -
Unity の Package Manager で Git URL を使用して追加:
https://github.com/gameframex/com.gameframex.unity.getchannel.git -
リポジトリを Unity プロジェクトの
Packagesディレクトリにクローンしてください。自動的に読み込まれます。
Unity プロジェクトの Packages/manifest.json を編集し、scopedRegistries セクションを追加してください:
{
"scopedRegistries": [
{
"name": "GameFrameX",
"url": "https://gameframex.upm.alianblank.uk",
"scopes": [
"com.gameframex"
]
}
]
}scopes は、どのパッケージをこのレジストリから解決するかを制御します。com.gameframex で始まるパッケージのみがこのレジストリから取得されます。
Then add the package to dependencies:
{
"dependencies": {
"com.gameframex.unity.getchannel": "1.3.2"
}
}C# スクリプトで、BlankGetChannel.GetChannelName(string key) メソッドを使用してチャンネル情報を取得します。key パラメータは、対応プラットフォームでチャンネル情報を設定した際のキー名です。
サンプルコード:
using UnityEngine;
public class MyGameScript : MonoBehaviour
{
void Start()
{
// デフォルトチャンネルを取得(キー名は "channel")
string channel = BlankGetChannel.GetChannelName();
Debug.Log("現在のチャンネル: " + channel);
// 特定のキーでチャンネルを取得
string customChannel = BlankGetChannel.GetChannelName("channelName");
Debug.Log("カスタムチャンネル: " + customChannel);
// デフォルト値を指定してチャンネルを取得
string subChannel = BlankGetChannel.GetChannelName("sub_channel", "unknown");
Debug.Log("サブチャンネル: " + subChannel);
}
}iOS、tvOS、visionOS プラットフォームでは、プラグインにビルド後処理 (PostProcessBuildHandler.cs) が含まれています。ビルド時、プロジェクトの Info.plist ファイルに:
channelという名前のキーが ない 場合、スクリプトは自動的にキーchannel、値defaultのエントリを追加します。channelという名前のキーが すでに存在する 場合、変更は行われません。
Xcode プロジェクトの Info.plist ファイルで channel の値を変更するか、BlankGetChannel.GetChannelName() を呼び出す際にカスタムキー名を使用してください(そのキー名が Info.plist に存在することを確認してください)。
Info.plist 設定例:
<key>channel</key>
<string>ios_cn_taptap</string>
<key>sub_channel</key>
<string>beta</string>Android プラットフォームでは、AndroidManifest.xml ファイルでチャンネル情報を定義する必要があります。通常、<application> タグ内に <meta-data> タグを追加して行います。
例えば、キー名 channel、値 android_cn_taptap を使用する場合:
<application ...>
<activity ...>
...
</activity>
<meta-data
android:name="channel"
android:value="android_cn_taptap" />
<meta-data
android:name="sub_channel"
android:value="beta" />
<!-- その他の meta-data -->
</application>その後、C# コードで BlankGetChannel.GetChannelName("channel") を使用してこの値を取得できます。
Editor、PC(Windows/Mac/Linux)、WebGL、UWP、PS4、PS5、Xbox One、Nintendo Switch などのプラットフォームでは、Unity プロジェクトの Resources フォルダに application_config.txt という名前のテキストファイルを作成する必要があります。
application_config.txt ファイル形式の例:
channel=editor_cn_test
sub_channel=beta
other_key=other_value
各行の形式:キー名=値
プラグインはこのファイルからキーと値のペアを自動的に読み取り、後続の使用のためにキャッシュします。
BlankGetChannel.GetChannelName(string key)を呼び出す際、使用するkeyが対応プラットフォームの設定ファイルで設定したキー名と一致していることを確認してください:- iOS / tvOS / visionOS:
Info.plistファイル - Android:
AndroidManifest.xmlファイルの<meta-data>タグ - Editor / PC / WebGL / UWP / コンソールプラットフォーム:
Resources/application_config.txtファイル
- iOS / tvOS / visionOS:
- プラグインには
link.xmlファイルが含まれており、Unity のコードストリッピング機能によるコード削除を防ぎます。 GetChannelName()メソッドはチャンネル情報をキャッシュし、設定ファイルの繰り返し読み込みを回避してパフォーマンスを向上させます。
