Java 获取libGDX Android游戏的目录文件和类加载器

Java 获取libGDX Android游戏的目录文件和类加载器,java,android,libgdx,Java,Android,Libgdx,我有一个针对Android的libGDX游戏项目,我想在其中执行一个Groovy脚本 为此,我正在检查以下示例代码: 他们设法在Android上执行Java中嵌入的Groovy。特别是GrooidShell.java() 我已经设法在libGDX项目的Android启动器中实现了大部分代码。但是,我无法运行它,因为我缺少两个参数: public GrooidShell(File tmpDir, ClassLoader parent) { 第一个可以是任何目录。第二个,我甚至不知道它是干什么用的

我有一个针对Android的libGDX游戏项目,我想在其中执行一个Groovy脚本

为此,我正在检查以下示例代码:

他们设法在Android上执行Java中嵌入的Groovy。特别是
GrooidShell.java
()

我已经设法在libGDX项目的Android启动器中实现了大部分代码。但是,我无法运行它,因为我缺少两个参数:

public GrooidShell(File tmpDir, ClassLoader parent) {
第一个可以是任何目录。第二个,我甚至不知道它是干什么用的

我的问题是,类加载器
文件
参数应该是什么?我需要获取它们并在libGDX的
AndroidLauncher
类中使用它们,如下所示:

public class AndroidLauncher extends AndroidApplication {
    @Override
    protected void onCreate (Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        AndroidApplicationConfiguration config = new AndroidApplicationConfiguration();
        initialize(new MyGdxGame(), config);
    }
}

首先注意
GroovyActivity.groovy

GrooidShell shell = new GrooidShell(applicationContext.getDir("dynclasses", 0), this.classLoader)
GrooidShell的第一个参数希望创建一个名为“dynclasses”的目录,并具有默认的预授权:

检索并在需要时创建一个新目录,应用程序可以在其中放置自己的自定义数据文件。您可以使用返回的文件对象创建和访问此目录中的文件。请注意,通过文件对象创建的文件只能由您自己的应用程序访问;您只能设置整个目录的模式,而不能设置单个文件的模式

参数

要检索的目录的名称。这是作为应用程序数据的一部分创建的目录。 模式操作模式。默认操作使用0或MODE_PRIVATE,MODE_WORLD_READABLE和MODE_WORLD_WRITEABLE控制权限

返回

请求目录的文件对象。如果目录不存在,则已创建该目录

第二个参数
this.classLoader
指的是当前正在运行的类加载器,您可以按原样使用它,也可以在groovy脚本中使用
this.class.classLoader
。您还可以在活动java代码中使用
getApplicationContext().getClassLoader()