5

由于 Objective-C 存在并且即使在 MinGW 中也受支持,通过传递-x objective-c,是否有使用 Android SDK 实现此目的的技巧?我在同事的机器上进行了初步测试,似乎objective-c不支持该语言。

我对让 UIKit 或 AppKit,甚至是 Foundation 工作不感兴趣;我用 Objective-C 编写了大部分 OpenGLES 游戏,并成功地将其移植到 Mac OS X 和 Windows;我相当肯定,一旦我有时间弄清楚足够的 GNUStep,我可以轻松地将它移植到 GNU/Linux(即使没有它,我也可以创建类来运行游戏)。

我只对基础语言和基本运行时(如果可能的话,包括属性)感兴趣;甚至NSObject可以很容易地写到我需要的程度。


与此同时,我设法编译了一些 Objective-C 代码,并为此编写了一个指南:

我在下面的回答中有更多详细信息。

4

3 回答 3

2

Apportable平台包括与 Android NDK 的 Clang 编译器集成。如果您想超越基本的 Objective-C 语言和运行时支持,它还包括许多其他有用的功能。

于 2013-07-24T18:45:12.810 回答
1

您可能必须在启用该选项的情况下重新编译 ndk gcc 的源代码。在极端情况下,您可能必须在上游找到该选项的代码并将其添加到 ndk gcc 的源代码中。

移植运行时库以在仿生而不是 glibc 之上工作可能更有趣。

请注意,android 并不能很好地处理纯本机二进制文件,您需要从 java 包装应用程序中作为 jni 库调用,您必须通过该应用程序调用音频或分叉并执行一个(不推荐,并为您留下依赖于设备的音频黑客)。

于 2010-09-24T15:05:30.260 回答
1

有这个谷歌代码项目:http ://code.google.com/p/android-gcc-objc2-0/但是我还没有测试过。

另外,我在 Cocotron 邮件列表上查询过这个编译器是否可以与 Cocotron 的 Foundation 和 CoreFoundation 一起使用;一个人回答说不是,他已经解决了这个问题:http ://groups.google.com/group/cocotron-dev/browse_thread/thread/448355f2a6c9c28e#


与此同时,我设法编译了一些 Objective-C 代码,并为此编写了一个指南:

*使用 Mac OS X 为 Android 开发 Objective-C 应用程序


如果这就是你所需要的,Clang 现在包含在 NDK 中。

于 2010-10-18T10:48:59.497 回答