为啥构建 ANE 需要 Android Studio / Eclipse?

Posted

技术标签:

【中文标题】为啥构建 ANE 需要 Android Studio / Eclipse?【英文标题】:Why is Android Studio / Eclipse necessary to build an ANE?为什么构建 ANE 需要 Android Studio / Eclipse? 【发布时间】:2021-10-06 09:58:30 【问题描述】:

我使用以下过程为 android 创建了一个基于 Java 的 ANE。

    编译 Java 文件及其对 Android 平台的依赖项。 使用 Java SDK 创建 .jar 文件。 创建 .swc 文件。 使用 ADT 打包 ANE。

当我使用该 ANE 打包 APK 时,我收到以下错误:

dx tool failed:Compilation failed with an internal error. java.lang.IllegalArgumentException at com.android.tools.r8.org.objectweb.asm.ClassReader.<init>(ClassReader .java:160) at com.android.tools.r8.org.objectweb.asm.ClassReader.<init>(ClassReader .java:143) at com.android.tools.r8.org.objectweb.asm.ClassReader.<init>(ClassReader .java:418) at com.android.tools.r8.graph.JarClassFileReader.read(JarClassFileReader .java:91) at com.android.tools.r8.dex.ApplicationReader$ClassReader.lambda$readCla ssSources$1(ApplicationReader.java:231) at java.util.concurrent.ForkJoinTask$AdaptedCallable.exec(Unknown Source ) at java.util.concurrent.ForkJoinTask.doExec(Unknown Source) at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(Unknown Source) at java.util.concurrent.ForkJoinPool.runWorker(Unknown Source) at java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)

我知道我没有遵循使用 Android Studio 或 Eclipse 或某些此类 IDE 的常规路线。我只是使用命令提示符来实现构建ANE。

我在这里缺少什么? Android Studio 在输出打包到 ANE 中的 .jar 文件之前是否有特定的操作?

【问题讨论】:

【参考方案1】:

将 javac 中的发布标志更改为 --release 8 并正确创建 APK。早些时候,发布标志设置为 16。

【讨论】:

以上是关于为啥构建 ANE 需要 Android Studio / Eclipse?的主要内容,如果未能解决你的问题,请参考以下文章

FIREBASE-ANE Adob e air android无法连接到我的Firebase项目

带有ane的air sdk 16 buid app,需要有通用的iOS库。请联系 ANE 开发人员

适用于 AIR Android 应用程序的 Chromecast 和 ANE - 访问 android.os

Android:使用 ANE (EasyPush) 时,Adobe 在启动时崩溃

为啥我们需要使用 Android Studio 来构建 Flutter 应用? [关闭]

Android Air GoViral ANE showFacebookShareDialog throw modeOverride错误