我希望从Unity获取Android版本信息。我知道可以使用
我决定使用Unity的
当我执行以下操作时:
请注意,我用 "$" 替换了 ".",现在可以找到该类。
过去我写过很多插件,以前从未遇到过这个问题。对于 example,当我访问 Android 的
访问
为什么您必须在 Build 和 VERSION 之间放置 "$" 才能使
顺便说一下,这是在 Unity 中
SystemInfo.operatingSystem
来实现,但它没有所有的信息,如发布号、代号和其他信息。我决定使用Unity的
AndroidJavaClass
类和Android的Build.VERSION
类制作一个小插件,但遇到了一个无法解释的问题。当我执行以下操作时:
AndroidJavaClass("android.os.Build.VERSION");
我遇到了类未找到异常。
使用以下方法时,它可以正常工作:
AndroidJavaClass("android.os.Build$VERSION");
请注意,我用 "$" 替换了 ".",现在可以找到该类。
过去我写过很多插件,以前从未遇到过这个问题。对于 example,当我访问 Android 的
Uri
类时,我使用了 AndroidJavaClass("android.net.Uri");
,它可以正常工作。我不必在 "Uri
" 前面加上 "$"。访问
android.net.Uri
和访问 android.os.Build.VERSION
有什么不同之处?为什么您必须在 Build 和 VERSION 之间放置 "$" 才能使
AndroidJavaClass
找到这个类?顺便说一下,这是在 Unity 中
Build.VERSION
的可工作插件:public class AndroidVersion
{
static AndroidJavaClass versionInfo;
static AndroidVersion()
{
versionInfo = new AndroidJavaClass("android.os.Build$VERSION");
}
public static string BASE_OS
{
get
{
return versionInfo.GetStatic<string>("BASE_OS");
}
}
public static string CODENAME
{
get
{
return versionInfo.GetStatic<string>("CODENAME");
}
}
public static string INCREMENTAL
{
get
{
return versionInfo.GetStatic<string>("INCREMENTAL");
}
}
public static int PREVIEW_SDK_INT
{
get
{
return versionInfo.GetStatic<int>("PREVIEW_SDK_INT");
}
}
public static string RELEASE
{
get
{
return versionInfo.GetStatic<string>("RELEASE");
}
}
public static string SDK
{
get
{
return versionInfo.GetStatic<string>("SDK");
}
}
public static int SDK_INT
{
get
{
return versionInfo.GetStatic<int>("SDK_INT");
}
}
public static string SECURITY_PATCH
{
get
{
return versionInfo.GetStatic<string>("SECURITY_PATCH");
}
}
public static string ALL_VERSION
{
get
{
string version = "BASE_OS: " + BASE_OS + "\n";
version += "CODENAME: " + CODENAME + "\n";
version += "INCREMENTAL: " + INCREMENTAL + "\n";
version += "PREVIEW_SDK_INT: " + PREVIEW_SDK_INT + "\n";
version += "RELEASE: " + RELEASE + "\n";
version += "SDK: " + SDK + "\n";
version += "SDK_INT: " + SDK_INT + "\n";
version += "SECURITY_PATCH: " + SECURITY_PATCH;
return version;
}
}
}
android.net.Uri
不是 内部类?由于我将来会制作更多的插件,我如何从Android文档中知道一个类是否是内部类? - Programmer