【问题标题】:NDK vs Java: is there a difference in access to API?NDK vs Java:访问 API 有区别吗?
【发布时间】:2017-10-25 12:16:35
【问题描述】:

我之前的问题被标记为重复,并链接到一个过于笼统且答案分散且没有重点的问题。

我问的不是开发时间、运行时速度或内存占用。

NDK 和 Java 在 API 或 OS 访问方面有什么不同吗?

【问题讨论】:

    标签: android android-ndk android-sdk-tools


    【解决方案1】:

    是的,有很大的不同。 NDK 有很多事情不能直接做,必须调用 Java 方法来调用 OS API。还有一些 API 仅在 NDK 中可用,但 NDK 受到更多限制。您可以在此处查看简短摘要:Android NDK Native APIs

    但是 - 你为什么要以一般方式解决这个问题?您应该检查您的具体需求和系统要求,看看您是否可以从使用 NDK 中受益。

    【讨论】:

    • 我有旧版 C++ 代码,如果我可以使用 NDK,我必须
    • 我没有看到该链接在哪里明确指出有些事情我不能用 NDK 做。
    • 我没有说它显示了差异,它显示了 NDK 原生 API 的摘要。我告诉过你,根据我的经验,有些事情是你无法做到的......
    • yakobom 并没有说有些事情你不能在 NDK 中做。他只是解释说,有很多事情你的 C++ 代码只能通过调用 Java API 来实现。这意味着您项目的这些部分不会保持平台中立。
    • 例如,我认为您无法创建和管理 UI。另外,我认为没有任何 Java 代码就不能直接使用 OpenGL。此外,NDK 代码会更长、更复杂、更难调试。您可以考虑一个混合应用程序,它使用您在 NDK 中的代码,并在可能的情况下使用其他 Java 代码。
    猜你喜欢
    • 1970-01-01
    • 2012-11-22
    • 2020-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多