6
7

More than 5 years have passed since last update.

UnityからiOS・Androidの機器情報を取得 メモ

Last updated at Posted at 2016-02-10

■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
6
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
7