0

我想构建最终完全原生的 android C++ 应用程序,可以转移到 iOS,我应该从哪里开始

首先,为了更容易回答这个问题,我认为我自己几乎是一个中级 C++ 程序员,我还没有脱离命令行程序,但我了解向量、数组、指针、OOP 以及我还没有达到 100 岁的基础知识%,这就是我问这个问题的原因。

我已经用 java 中的 sdk 编写了一些 android 应用程序,但是我的老板现在想要 iOS 应用程序,他不想给我买 mac,(这就是为什么我坚持使用 c++ 中的完全原生 android 而不是去 iOS )

1)首先我很困惑买什么书可以让我从初级 C++ 编程到下一步,...我应该专注于学习 windows API 如果是这样的话,我应该买什么书和教程,因为我厌倦了购买 Kindle 书籍,这些书籍要么是高级的,要么是我已经理解的东西(我在中间找不到一本来挑战我继续使用我的 C++)所以,你们建议我应该直接去学习 android in c++ 还是我应该尝试去其他地方并首先在 C++ 上变得更好

2)如果我应该进入android或ndk,除了一本名为“ANDROID NDK”(大声笑)的kindle书之外,还有什么真正支持android ndk的好书。那本书我能够理解,但整个设置 Eclipse 令人困惑,因为它告诉我需要设置 cygwin,但后来它告诉我不必设置 cygwin,因为 ndk r7 支持命令行,所以我对 eclipse 的设置感到困惑,我使用 eclipse for java,但从来没有使用过 C++,我必须在项目菜单中将我的代码转换为 C++,所以有没有比那本书更好的 android ndk 教程。

如果你们能回答这两个问题,我将不胜感激,是的,我知道我可能应该从 iOS 而不是 android 开始,但我没有 Mac,因此我不会从 iOS 开始,(如果我错了,但是!))我想如果我可以编写 android 本机 C++ 代码,那么如果我使用 Xcode 4 在 iOS 上用 C++ 编写代码,那么过渡到 iOS 就不会那么难了。

我应该读的书我也应该去的教程会非常有帮助,非常感谢。

4

4 回答 4

0

我不确定您是否仍要构建 iOS 应用程序。我不明白学习 android C++ 对 iOS 应用程序有什么帮助。你仍然需要一个 mac 来编译和提交你的应用程序到应用商店(至少你可能需要借一个 mac 来构建和提交)。

另外,我建议对您的问题采用不同的方法(又名与 c++ 解决方案无关,但仍可能对您有所帮助)。

您可以使用 phonegap(将 html、css、javascript 转换为原生 iOS/Android/等应用程序的库)。您可以在 html、css 和 javascript(还有 jquerymobile)中编写简单的代码,并且可以轻松地将您的应用程序转移到不同的平台。

注意:Phonegap 的新名称是 Cordova。

您可以在这里找到更多信息:http ://www.phonegap.com

希望这可以帮助!-c0d3

于 2012-04-13T19:54:51.843 回答
0

好吧,我该怎么说呢?

1) 关于 C++ 的书籍:你试过参考书吗?

http://www.amazon.com/Programming-Principles-Practice-Using-C/dp/0321543726/ref=sr_1_2?s=books&ie=UTF8&qid=1334347108&sr=1-2

你也可以得到这个。它涵盖了基础知识并介绍了该语言的更多实际用法:

http://www.amazon.com/Programming-Principles-Practice-Using-C/dp/0321543726/ref=sr_1_2?s=books&ie=UTF8&qid=1334347108&sr=1-2

Herbert Shildt 有一本很棒的 C++ 书籍:

http://www.amazon.com/Beginners-Guide-Second-Edition/dp/0072232153/ref=sr_1_3?s=books&ie=UTF8&qid=1334347407&sr=1-3

请记住,所有这些书籍都没有涵盖C++ 新标准 C++0x(或 C++11)。

2)由于您计划进行多平台开发,因此我建议您使用移动框架。为两个系统(iOS 和 Android)编写多平台 C++ 代码并非易事。此外,iOS 的主要语言是 Objective C,顺便说一句,寻找 C++(甚至 Java)开发人员可能会很尴尬。不幸的是,大多数移动框架都是基于 Web 的。如果您的应用程序需要低级别的访问权限,那么您可能会不走运。

于 2012-04-13T20:08:08.920 回答
0

您最好的选择是将所有特定于平台的代码隐藏在实现公共接口的本机库中。您的代码将仅通过公开的接口使用库,并且实现在编译时通过平台特定标志绑定到接口

我不知道任何android-iOS原生跨平台开发库,也许应该有一个?

于 2012-04-13T20:11:26.427 回答
0

我以果酱发誓。我已经将它用于视频游戏开发。您可以从 Visual Studio 中完成整个 ios 开发、android 开发。

您将需要 iTunes 为 ios 部署,但仅此而已。

于 2012-05-04T19:23:13.747 回答