将Android jar添加到jogl或Java 3d项目会导致问题吗?

问题描述 投票:0回答:1

我重建了一个项目,我曾经在较旧的Mac上运行并添加了Android jar,因为我希望将来迁移到该项目并在项目中进行测试。程序执行但Swing应用程序,JOGL和Java 3D程序不再打开或渲染。可能会有持续的过程。他们会执行还是会遇到什么问题。

java android swing jogl java-3d
1个回答
0
投票

通过添加Android jar,我认为你的意思是Android SDK。将这些添加到Java项目将打破它作为Java!= Android。 (这部分在聊天和问题中已经被无数次讨论过了.JDK与Android SDK不同,字节码不同等)

Android中不存在Swing。 Java3D1也没有。 Android要么依赖嵌入式OpenGL ES支持,框架(例如LibGDX),引擎(例如Unity)或类似LWJGL的东西来访问OpenGL API。请注意,Android运行OpenGL ES,它基本上是一个轻量级的OpenGL(较少的API是一个区别)

JOGL确实有Android支持,看起来它更容易转换,因为API没有分开

此外,与Java相比,android拥有完全不同的系统。对于一个实例,有Activity,main方法没有使用,有布局(.xml或创建一个View对象的新实例,对于一个实例是SurfaceView或GLSurfaceView,但Button也可以)

我的观点是,如果您想将桌面OpenGL项目转换为Android,由于主要的API差异,您必须重新编写大部分内容。

因此,除非您采取措施使其在Android上可运行,否则它们将无法执行。你最好开始一个新项目,以确保你得到Android项目所需的所有依赖项(sdk是一回事,但也有清单,gradle插件等)

1:Java3D对Android有一些支持,但它还不是一个功能齐全的API

© www.soinside.com 2019 - 2024. All rights reserved.