Libgdx - 确定运行的平台

3
我有一个核心项目,需要转换成5个不同的平台。我需要根据运行平台改变一些参数。例如,如果是安卓系统,我需要将IP更改为模拟器本地主机10.0.0.2等。
我尝试使用以下答案来确定这一点:在Java中,是否可以知道类是否已经被加载? 但是即使调用任何(甚至不存在的)类,也会返回true。
2个回答

11

Application.getType()方法返回当前应用程序正在运行的平台:

switch (Gdx.app.getType()) {
    case ApplicationType.Android:
        // android specific code
        break;
    case ApplicationType.Desktop:
        // desktop specific code
        break;
    case ApplicationType.WebGl:
        // HTML5 specific code
        break;
    case ApplicationType.iOS:
        //iOS specific code
        break;
     case ApplicationType.HeadlessDesktop:
        //Headless desktop specific code
        break;
     case ApplicationType.Applet:
        //Applet specific code
        break;
    default:
        // Other platforms specific code
}

在安卓上,我们可以查询应用程序当前运行的安卓版本:

int androidVersion = Gdx.app.getVersion();

这里是有关 Application#ApplicationType 枚举的官方文档


iOS模拟器没有返回任何内容。 - Oliver Dixon

1
你可以使用这段HTML代码。
Application#getType()

它将返回以下输出之一:Android、Applet、桌面、iOS或WebGL。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接