J'ai découvert une classe, AndroidJavaClass, qui peut appeler des classes et des méthodes dans Android Java, par exemple obtenir le numéro de version de bande de base de l'appareil actuel, vérifier si l'appareil peut se connecter, puis accéder à l'interface d'accès à distance.
Comment écrire:
// 获取一个 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());
Obtenez le numéro de version de la bande de base de l'appareil :
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")
buildClass
Un objet nommé est créé AndroidJavaClass
, qui représente la classe dans le système Android Build
. Build
La classe contient des champs et des méthodes statiques pour obtenir des informations sur le périphérique, la version du système, le matériel et le fabricant.
Dans string radioVersion = buildClass.CallStatic<string>("getRadioVersion")
cette ligne de code, nous appelons Build
une méthode statique de classe getRadioVersion()
et stockons son résultat dans une variable chaîne radioVersion
. getRadioVersion()
La méthode renvoie le numéro de version du micrologiciel de la radio porteuse, qui est le numéro de version de la bande de base. Par conséquent, radioVersion
la variable contient le numéro de version de bande de base de l’appareil Android actuel.