■Android
MACアドレス取得
WIFIの情報取得を拒否されないようにする必要があるのでAndroidManifest.xmlを修正する。
■AndroidManifest.xmlの場所
Assetsと同列のTemp/StagingArea/AndroidManifest.xml
■追加するパーミッション
<!-- WIFI -->
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission>
■ソース
#if UNITY_ANDROID
AndroidJavaObject mWiFiManager;
// MACアドレス
string macAddr = "";
if (mWiFiManager == null)
{
using (AndroidJavaObject activity = new AndroidJavaClass("com.unity3d.player.UnityPlayer").GetStatic<AndroidJavaObject>("currentActivity"))
{
mWiFiManager = activity.Call<AndroidJavaObject>("getSystemService", "wifi");
}
}
macAddr = mWiFiManager.Call<AndroidJavaObject>("getConnectionInfo").Call<string>("getMacAddress");
#endif
■iOS
■デバイストークンとベンダーID取得
■ソース
#if UNITY_IPHONE
string deviceToken = "";
// デバイストークン取得
byte[] token = UnityEngine.iOS.NotificationServices.deviceToken;
if (token != null)
{
deviceToken = System.BitConverter.ToString(token).Replace("-", "");
}
else
{
deviceToken = "Nothing";
}
// ベンダーID取得
string identifierForVendor = UnityEngine.iOS.Device.vendorIdentifier;
#endif