gpt4 book ai didi

android - 在 Gluon JavaFXPorts 项目中使用 Android aar 库

转载 作者:搜寻专家 更新时间:2023-11-01 08:35:19 24 4
gpt4 key购买 nike

我的问题很简单。我正在使用 Gluon 的 Eclipse 插件,并在 JavaFX 中开发一个应用程序以在 Android 上运行。但是,我需要使用 Android 库(.aar 格式),但经过一段时间的尝试后,还是不行。有人知道我该怎么做吗?我已经尝试过只使用 .aar 中的 classes.jar,虽然这有点奏效,但我认为库缺少一些对其功能至关重要的资源和东西。谢谢。

编辑:我尝试使用的库是 CloudRail ,下载为here (Direct download)目前,使用提取的 classes.jar 中的类它有点功能,但是当他们的库中的 Activity 启动时(com.cloudrail.si.servicecode.commands.awaitCodeRedirect.AuthenticationActivity)它显示但是它是空白的并且没有任何东西在里面。我目前假设这是不正确的,并且缺少资源/文件是造成这种情况的原因。

最佳答案

我已经设法从 aar 文件中提取 classes.jar 并将其作为依赖项添加到 Gluon 项目中。

接下来,我将 Activity 添加到 AndroidManifest.xml 文件中,在主要的 FXActivity 之后:

<activity android:name="com.cloudrail.si.servicecode.commands.awaitCodeRedirect.AuthenticationActivity" />  

然后我在 Android 包中创建了一个类,提供了访问 Google 云端硬盘所需的凭据。

public AndroidTestAar() {
GoogleDrive cs = new GoogleDrive(FXActivity.getInstance(), "****","****");
new Thread() {
@Override
public void run() {
List<CloudMetaData> metas = cs.getChildren("/");
Log.i("info", "Folder has " + metas.size() + " children");
for (CloudMetaData meta : metas) {
Log.i("info", "Child: " + meta.getName());
}
}
}.start();
}

这个类是从 View 中调用的:

public BasicView(String name) {
...
button.setOnAction(e -> {
try {
Class c = Class.forName("com.testaar.AndroidTestAar");
c.newInstance();
} catch (ClassNotFoundException | InstantiationException | IllegalAccessException ex) {}

});
}

我可以部署 apk 并运行它。

该 Activity 在 JavaFX 应用之外的 Android WebView 中运行。

首先它要求我使用我的用户/密码登录,然后它询问我是否允许离线访问,最后它在控制台上成功列出了我的所有文件。

关于android - 在 Gluon JavaFXPorts 项目中使用 Android aar 库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37124732/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com