Java与Android应用程序开发中的本机编码

时间:2011-07-27 12:52:20

标签: java android c++

我计划创建一个SDK(涉及大量数据操作),可用于在Android上创建应用程序。

我计划开发完整的SDK,包括Java中的库,因为如果我用本机语言(C ++)实现我的库,Java和本机层之间的数据移动将涉及内存副本并将使我的申请看起来很慢。

我计划稍后将同一个SDK移植到Windows Mobile等其他平台。在这种情况下,我对代码的更好方法感到困惑,请记住SDK的可移植性和性能。

非常感谢输入。

1 个答案:

答案 0 :(得分:2)

Windows Mobile支持本机代码(Visual C ++,请参阅Getting Started in Developing Applications for Windows Mobile),因此使用Android NDK将是一个不错的选择。至少你不必从头开始写整件事。您可以使用C / C ++编写公共代码库,只编写Android的Java包装器。

如您所知,Windows Phone 7(Windows Mobile的后继者)使用C#以及您在Android上采取的任何方法,无论如何您都需要从头开始重写SDK。 Windows Phone 7.x 可能将来某个时候支持本机代码(C / C ++),但不会很快支持。