LoginSignup
0
0

More than 5 years have passed since last update.

Tango is out of date になる

Last updated at Posted at 2017-07-12

問題

Tango Exampleをビルドして実行すると,Tango is out of dateと表示される.

いつもなら右上に出る,Sceneを切り替えるButtonも全て消え去っている.
とてもつらい.

環境

Tango Unity Example : 2017/07/11 に落としてきた版

端末 : ZenFone AR ZS571KL 64GB

Tango Core Version : 1.51

原因

Tango is out of date ということで, Tango Core のバージョンが古いということが想像できる.

一応コードも見てみる.

TangoPresentController.cs
        if (!AndroidHelper.IsTangoCorePresent())
        {
            tangoState = TangoState.NotPresent;
        }
        else if (!AndroidHelper.IsTangoCoreUpToDate())
        {
            tangoState = TangoState.OutOfDate;
        }
        else
        {
            tangoState = TangoState.Present;
        }
TangoAndroidHelper.cs

    internal const int TANGO_MINIMUM_VERSION_CODE = 14694;

<中略>

    /// <summary>
    /// Check if the Tango Core package is up to date.
    /// </summary>
    /// <returns><c>true</c> if the Tango Core is up to date; otherwise, <c>false</c>.</returns>
    public static bool IsTangoCoreUpToDate()
    {
#if UNITY_EDITOR
        return true;
#else
        AndroidJavaObject tangoObject = GetTangoHelperObject();

        if (tangoObject != null)
        {
            int rawCode = tangoObject.Call<int>("getTangoCoreVersionCode");

            // The first two digits of the version code are actually the Platform version.  The real
            // code is actually the integer following those.
            string stringCode = rawCode.ToString().Remove(0, 2);
            int realCode;
            if (int.TryParse(stringCode, out realCode))
            {
                return realCode >= TANGO_MINIMUM_VERSION_CODE;
            }
        }

        return false;
#endif
    }

getTangoCoreVersionCodeで取得できるバージョンの頭2桁はプラットフォームバージョン,
その後ろに続く整数が実際のTangoのバージョンであるということが分かった.

そして,想像どおりこのgetTangoCoreversionCodeで返る値が14694より低いことが問題だろうということが分かった.

対策

Tango Core を更新する.

ヒント

2017/07/12 現在,「Tango」でストア検索すると,Tango用の検索結果画面になってしまい,Tango Coreが見当たらない.

「Tango Core」で検索する必要がある.

解決

Tango is available! となった.

2017/07/12 時点での Tango Core バージョンは 1.55 となった.

蛇足

たぶん,アプリの自動更新をONにして,普通に使っていれば,この問題は起きないと思う.

たまにはTango端末を触ろう!

追記 - 2017/07/12 16:05

RawVersionを取って表示した.

Tango Core Version 1.55 1.54 1.53 1.51
Tango Raw Version 0016802 0016016 0015395 0014693

上表では,Platform versionである上2桁を削っている.

現在のTango Exampleを触るには少なくとも1.51よりは新しい必要がありそうだ.


ところで,Zenfone ARではPlatform versionが24,Phab2 Proでは23となっていた1

古いTango端末をお持ちの方が居たらこの値の変化をぜひ確認いただきたい.






  1. Phab2 ProのTango Core Versionを1.55にしたら,Raw Versionは230016802となった. 

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