classes.jar
aar ファイルからを抽出し、依存関係として Gluon プロジェクトに追加することができました。
次に、 main の後にアクティビティを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();
}
このクラスはビューから呼び出されます。
public BasicView(String name) {
...
button.setOnAction(e -> {
try {
Class c = Class.forName("com.testaar.AndroidTestAar");
c.newInstance();
} catch (ClassNotFoundException | InstantiationException | IllegalAccessException ex) {}
});
}
apk をデプロイして実行できました。
アクティビティは、JavaFX アプリの外部の Android WebView で実行されます。
最初にユーザー/パスワードでサインインするように求められ、次にオフライン アクセスを許可するように求められ、最後にコンソールにすべてのファイルが正常に一覧表示されました。