【问题标题】:Basic android app questions基本的安卓应用问题
【发布时间】:2014-02-03 13:15:41
【问题描述】:

我是一名 C++ 程序员,我目前有一些 PC 游戏卖得很好。 我想将其中一个移植到 Android,但我真的不知道从哪里开始。

所以我假设...

  1. 我需要购买一台 Android 设备(我猜平板电脑最好写代码,因为它的屏幕很大)。
  2. 我需要下载一个 C++ 编译器。
  3. 我需要从 directX 转换为 openGL。

这一切都正确吗?

【问题讨论】:

    标签: android opengl-es directx cross-compiling


    【解决方案1】:

    您不必购买 Android 设备。您实际上可以使用他们提供的模拟器。您可以在此处下载并了解有关这些模拟器的更多信息(几乎所有存在的 Android 设备都有一个):http://developer.android.com/tools/help/emulator.html

    我无法为 Android 上的 C++ 提供任何帮助,但之前有一个关于它的 SO 线程:Write applications in C or C++ for Android?

    编辑: 在做了更多研究之后,Android 提供了一个NDK,用于使用 C 或 C++ 等原生代码语言编写应用程序。但是,您应该记住,他们给出的警告是“一般来说,您应该只在对您的应用程序必不可少的情况下使用 NDK,而不是因为您只是更喜欢用 C/C++ 编程。” - 似乎您应该只在应用程序需要时才使用它。

    【讨论】:

    • 非常感谢您的帮助。这个程序很大,所以它确实需要保持为 C++(重写整个东西的工作量太大)所以我会研究 NDK
    • 仅供参考,模拟器不足以支持 OpenGL 应用程序。它根本不适用于 ES 2.0+。
    【解决方案2】:
    1. 是的,您需要一个设备。 (模拟器不足以支持 OpenGL。)
    2. NDK 提供正确的编译器。如果您不习惯使用 make 文件,Android make 文件会有点棘手,但学习起来并不难。应该有很多教程。
    3. 当然。 OpenGL ES 具体来说。您使用的版本取决于您打算定位的 Android 版本。从 ES 1.1 到 ES 2.0 的一个很大区别在于 2.0 是基于着色器的,因此您要移植的代码类型可能会在此处影响您的决策。

    【讨论】:

    • 非常感谢 - 非常有帮助。那么,如果我使用 ES1.1,这意味着该应用程序可以在任何 Android 设备上运行吗?我的游戏中的图形非常简单。
    • 是的,但它根本不支持着色器。如果您的 DirectX 代码不使用着色器,那么移植到 1.1 可能是最简单的。也就是说,Android 2.2 以下设备的市场份额很小(您不会错过针对更高版本的客户)。
    • 谢谢戴夫。我不完全明白你在说什么。如果我使用 1.1,该应用程序将在所有设备上运行,所以我可以访问所有客户?当然 1.1 仍然可以在更新的设备上运行?那是对的吗?干杯。
    【解决方案3】:

    我是愚蠢的还是我需要的? compiler

    生成的代码会在安卓应用上运行吗?

    谢谢

    【讨论】:

      【解决方案4】:

      如果您仍想在设备上编写/编译代码,可以使用一些基于 Android 的编译器...或包含编译器包的环境...但我猜您需要一个相当强大的平板电脑.

      对于编译,我在 NookHD 上使用KBOX environment。它有几个可下载的包...包括 GCC 4.7、GCC 4.8 和 nano 包。注意:我是初学者,所以我只用它编译了非常小的程序;我不知道如何编译更大、更复杂的代码。还有其他应用程序......无论是在 Play 商店还是在线......但我无法与他们交谈,因为我没有使用它们。

      为了编写代码,我使用 DroidEdit。在 KBOX 环境中的 Nano 可以在紧要关头工作……但是由于 Android 的最小仿生库会出现一些屏幕绘制错误,如果您要编写大量代码,可能会很烦人。

      【讨论】:

        猜你喜欢
        • 2014-04-01
        • 1970-01-01
        • 2015-02-16
        • 1970-01-01
        • 2013-08-21
        • 2011-10-05
        • 1970-01-01
        • 2012-05-07
        相关资源
        最近更新 更多