我即将开始android应用程序的开发。
从What is NDK?文档中,我无法提取以下信息:
与SDK相比,使用NDK真的引入了新功能吗?
我对此很感兴趣,因为使用NDK会极大地增加应用程序的复杂性,所以如果我对提高性能不感兴趣,还有其他理由去使用NDK吗?
我的意思是举个例子:
-restart电话
提前感谢你的任何有用的答案。
发布于 2011-10-21 00:45:31
据我所知,使用NDK的唯一原因是为了从您的应用程序中挤出额外的性能,并更接近裸机。如果你不需要做这两件事中的任何一件,你可能应该远离NDK。
还要注意的是,Dalvik VM已经有了一些相当出色的性能,而且相对简单。
发布于 2011-10-21 02:16:46
除非你有充分的理由使用NDK,否则你真的应该使用SDK。好的理由可能会有所不同,但例如,您可以使用NDK:
编写的
发布于 2011-10-21 00:53:26
NDK在功能方面有更多的限制。
您可以从NDK中获得用C++编写应用程序并将其编译为原生ARM代码的能力。如果您喜欢C++胜过Java,如果您有一个想要移植到安卓的现有C++应用程序,或者如果您只是需要只有本机代码才能提供的额外性能,那么无论如何都应该使用NDK。
我自己没有这样做,但另一种选择是编写混合应用程序,其中应用程序主要是用Java语言编写的,其中选定的函数是用C++编写的,这些函数是从Java语言代码中调用的。
https://stackoverflow.com/questions/7839218
复制相似问题