Files
crtr/Assets/Plugins/Android/Cryville.Input.Unity.Android/JavaStaticMethods.cs

28 lines
1.1 KiB
C#

using System;
using UnityEngine;
namespace Cryville.Input.Unity.Android {
internal static class JavaStaticMethods {
static bool _init;
static IntPtr _t_SystemClock;
static IntPtr _m_SystemClock_elapsedRealtimeNanos;
static IntPtr _m_SystemClock_uptimeMillis;
static readonly jvalue[] _p_void = new jvalue[0];
public static void Init() {
if (_init) return;
_init = true;
var _lt_SystemClock = AndroidJNI.FindClass("android/os/SystemClock");
_t_SystemClock = AndroidJNI.NewGlobalRef(_lt_SystemClock);
_m_SystemClock_elapsedRealtimeNanos = AndroidJNI.GetStaticMethodID(_lt_SystemClock, "elapsedRealtimeNanos", "()J");
_m_SystemClock_uptimeMillis = AndroidJNI.GetStaticMethodID(_lt_SystemClock, "uptimeMillis", "()J");
AndroidJNI.DeleteLocalRef(_lt_SystemClock);
}
public static long SystemClock_elapsedRealtimeNanos() {
return AndroidJNI.CallStaticLongMethod(_t_SystemClock, _m_SystemClock_elapsedRealtimeNanos, _p_void);
}
public static long SystemClock_uptimeMillis() {
return AndroidJNI.CallStaticLongMethod(_t_SystemClock, _m_SystemClock_uptimeMillis, _p_void);
}
}
}