【问题标题】:I have sdk. Is ndk neccesarry for eclipse我有sdk。日食需要ndk吗
【发布时间】:2015-02-20 21:13:14
【问题描述】:
我有 Eclipse Kepler,我有“Android-Sdk-Windows”文件。但是我无法在 Eclipse 中创建一个 android 项目。我需要 NDK 吗?
我已经有使用“sdk”和eclipse打开项目的经验。但是这一次我怎样才能进入“sdk”路径而不是“ndk”。
或者教我什么是“sdk”和“ndk”
i tried eclipse->preference->android-> But i can only see NDK location.
【问题讨论】:
标签:
android
android-ndk
android-sdk-tools
【解决方案1】:
你不需要ndk,为了构建一个android项目。如果您在使用 Eclipse 时遇到困难,我建议您使用 Android Studio,除非您对 Eclipse 不满意。我两者都用,而且我更喜欢尽可能使用 Android Studio。
如果你决定继续使用eclipse,下载ADT插件就像下载ADT插件一样简单,只需将url放在Help->Install New Software下的输入框中,从Android sdk manager启动并下载sdk,重新启动eclipse,然后开始一个新的Android项目。希望您不必做任何事情来配置 java 或其他任何东西。
ndk 是一种从较低级别访问事物的方法,以绕过某些事物,或从手机中挤出更多性能以进行高强度操作,或最终能够从不同项目移植 c/c++ 代码.即,您可以用 c 编写 Opengl ES 游戏,并以这种方式重用 web、ios 和 android 的大部分代码。但这超出了问题和这个答案的范围。
【解决方案2】:
本机方法是特定于平台的代码。它们通常用 C 或 C++ 等语言编写并包含在库(dll)中。可以创建受益于此类库的混合 Java 应用程序。
使用本机方法的原因
- 访问您的设备或 Android 的特殊功能
操作系统
- 获得额外的速度
- 访问大量现有遗留代码
通常,NDK 的良好用例是 CPU 密集型应用程序,例如游戏引擎、信号处理和物理模拟
本机方法的主要缺点是您不具备跨平台能力。
什么是 Android NDK
Android NDK 是 Android SDK 的配套工具,它允许
您使用本机代码构建应用程序的性能关键部分。
它提供了允许您构建活动的标题和库,
处理用户输入,使用硬件传感器,访问应用程序资源,
等等,在使用 C 或 C++ 编程时。如果您编写本机代码,您的
应用程序仍然被打包到一个 .apk 文件中并且它们仍然运行
设备上的虚拟机内部。基本的安卓
应用模型不会改变。
现在,如果您不知道本机代码是什么,那么您可能不需要使用本机代码。 Android NDK 文档很好地解释了这一点:
...,您应该了解 NDK 不会使大多数应用程序受益。作为
作为开发人员,您需要平衡其优点和缺点。
值得注意的是,在 Android 上使用本机代码通常不会导致
显着的性能改进,但它总是增加你的应用程序
复杂。通常,您应该只在必要时使用 NDK
到你的应用程序——绝不是因为你只是喜欢用 C/C++ 编程。什么时候
检查您是否应该使用本机代码进行开发,想想
了解您的要求并查看 Android 框架 API 是否提供
您需要的功能。