Unity の C# は Android Java (AndroidJavaClass) のクラスとメソッドを呼び出します

Android Java のクラスとメソッドを呼び出すことができる AndroidJavaClass というクラスを発見しました。これにより、現在のデバイスのベースバンド バージョン番号を取得したり、デバイスがダイヤルアップできるかどうかを確認したり、ダイヤルアップ インターフェイスにジャンプしたりすることができます。
書き方:

// 获取一个 AndroidJavaObject 对象,该对象表示 java.text.SimpleDateFormat 类
AndroidJavaClass simpleDateFormatClass = new AndroidJavaClass("java.text.SimpleDateFormat");

// 创建一个 SimpleDateFormat 对象实例
AndroidJavaObject simpleDateFormat = simpleDateFormatClass.CallStatic<AndroidJavaObject>("getInstance");

// 调用对象实例上的 parse() 方法
AndroidJavaObject date = simpleDateFormat.Call<AndroidJavaObject>("parse", "2021-08-04 16:36:00");

// 将 Java Date 对象转换为 C# DateTime 对象
DateTime dateTime = new DateTime(date.Call<long>("getTime") * 10000 + DateTimeOffset.FromUnixTimeMilliseconds(0).Ticks, DateTimeKind.Utc);
Debug.Log(dateTime.ToString());

デバイスのベースバンド バージョン番号を取得します。

public string IsRunningOnEmulator6()
{
    
    
    if (Application.platform == RuntimePlatform.Android)
    {
    
    
        AndroidJavaClass buildClass = new AndroidJavaClass("android.os.Build");
        string radioVersion = buildClass.CallStatic<string>("getRadioVersion");
        return radioVersion;
    }
    return "";
}

AndroidJavaClass buildClass = new AndroidJavaClass("android.os.Build")Android システムのクラスを表す というbuildClass名前のオブジェクトが作成されますこのクラスには、デバイス、システム バージョン、ハードウェア、製造元に関する情報の静的フィールドとメソッドが含まれています。AndroidJavaClassBuildBuild

このコード行では、クラスの静的メソッドstring radioVersion = buildClass.CallStatic<string>("getRadioVersion")を呼び出し、その結果を文字列変数に格納しますこのメソッドは、キャリア無線ファームウェアのバージョン番号、つまりベースバンドのバージョン番号を返します。したがって、変数には現在の Android デバイスのベースバンド バージョン番号が含まれます。BuildgetRadioVersion()radioVersiongetRadioVersion()radioVersion

おすすめ

転載: blog.csdn.net/QO_GQ/article/details/130185961