热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Macosx下配置Androidndk开发环境

1.阅读下面之前,请确保你androidsdk的开发环境已经搭建好,ADT也最好是目前最新的.2.到http:developer.android.comtoolssdkndkin

 1.阅读下面之前,请确保你android sdk的开发环境已经搭建好,ADT也最好是目前最新的.

 2.到http://developer.android.com/tools/sdk/ndk/index.html这里下载最新的ndk.

 3.下载完成后,解压你下载的文件.

 4.配置一下你的.bash_profile; 开启终端,输入命令 pico .bash_profile 

首先添加一行 export PATH=${PATH}:/Users/jarrahwu/Documents/android-ndk-r8d

然后再来一行 A_NDK_ROOT=/Users/jarrahwu/Documents/android-ndk-r8d

最后来一行  export A_NDK_ROOT

这个其实就相当于windows里面的环境变量.contrl + x 保存一下,再输入 Y确认,最后来个enter.最后的最后,关闭终端,重新打开一下.

 

可以参考一下我上传的图片.

如果上面配置无误的话.就可以准备写一个ndk的hello world了.

(1)首先想正常建立android项目一样,建立好一个项目叫MyNDK

(2)配置一下android NDK 的路径,具体操作就是->eclipse  ->preferences ->android ->NDK 然后再配置自己的NDK路径

(3)如果你不是最新的ADT可能你会要在终端用javah命令来添加NDK支持,建立文件夹什么的之类的,但是现在最新的ADT已经包含了一些列这些操作.你可以很简单就能添加NDK支持.

具体操作:  右键你的项目 ->android tools ->Add Native Support..一下子就OK了.如果你的eclipse不能查看c文件的话,你就要添加CDT的支持了.

很简单的就建立了一个NDK的project了.

下面到代码部分,先java部分吧,在你的activity里面主要就是调用你的ndk库,调用库的方法.

 

下面来到关键部分了.就C了,当时遇到了好多错误什么的,尤其要注意格式,和规范吧.直接看代码吧.一定要有这个extern 什么开头的 声明一下你的方法,不然回报错的.

 

最后我们来运行一下吧.看看效果..

 

有需要源码的可以留言.看到就回.本文如果有写得不好的地方,希望多多拍砖.


推荐阅读
  • Android中将独立SO库封装进JAR包并实现SO库的加载与调用
    在Android开发中,将独立的SO库封装进JAR包并实现其加载与调用是一个常见的需求。本文详细介绍了如何将SO库嵌入到JAR包中,并确保在外部应用调用该JAR包时能够正确加载和使用这些SO库。通过这种方式,开发者可以更方便地管理和分发包含原生代码的库文件,提高开发效率和代码复用性。文章还探讨了常见的问题及其解决方案,帮助开发者避免在实际应用中遇到的坑。 ... [详细]
  • Amoeba 通过优化 MySQL 的读写分离功能显著提升了数据库性能。作为一款基于 MySQL 协议的代理工具,Amoeba 能够高效地处理应用程序的请求,并根据预设的规则将 SQL 请求智能地分配到不同的数据库实例,从而实现负载均衡和高可用性。该方案不仅提高了系统的并发处理能力,还有效减少了主数据库的负担,确保了数据的一致性和可靠性。 ... [详细]
  • 在项目需要国际化处理时,即支持多种语言切换的功能,通常有两种方案:单个包和多个包。本文将重点讨论单个包的实现方法。 ... [详细]
  • 解决Jenkins编译过程中ERROR: Failed to Parse POMs的问题
    在使用Jenkins进行自动化构建时,有时会遇到“ERROR: Failed to parse POMs”的错误。本文将详细分析该问题的原因,并提供有效的解决方案。 ... [详细]
  • 本文整理了一份基础的嵌入式Linux工程师笔试题,涵盖填空题、编程题和简答题,旨在帮助考生更好地准备考试。 ... [详细]
  • 本文详细介绍了 Java 网站开发的相关资源和步骤,包括常用网站、开发环境和框架选择。 ... [详细]
  • 本文将介绍如何在混合开发(Hybrid)应用中实现Native与HTML5的交互,包括基本概念、学习目标以及具体的实现步骤。 ... [详细]
  • 本文详细介绍了如何在 Linux 系统上安装 JDK 1.8、MySQL 和 Redis,并提供了相应的环境配置和验证步骤。 ... [详细]
  • 未定义的打字稿记录:探索其成因与解决方案 ... [详细]
  • 在 Android 开发中,`android:exported` 属性用于控制组件(如 Activity、Service、BroadcastReceiver 和 ContentProvider)是否可以被其他应用组件访问或与其交互。若将此属性设为 `true`,则允许外部应用调用或与之交互;反之,若设为 `false`,则仅限于同一应用内的组件进行访问。这一属性对于确保应用的安全性和隐私保护至关重要。 ... [详细]
  • Hadoop平台警告解决:无法加载本机Hadoop库的全面应对方案
    本文探讨了在Hadoop平台上遇到“无法加载本机Hadoop库”警告的多种解决方案。首先,通过修改日志配置文件来忽略该警告,这一方法被证明是有效的。其次,尝试指定本地库的路径,但未能解决问题。接着,尝试不使用Hadoop本地库,同样没有效果。然后,通过替换现有的Hadoop本地库,成功解决了问题。最后,根据Hadoop的源代码自行编译本地库,也达到了预期的效果。以上方法适用于macOS系统。 ... [详细]
  • 在Ubuntu系统中安装Android SDK的详细步骤及解决“Failed to fetch URL https://dlssl.google.com/”错误的方法
    在Ubuntu 11.10 x64系统中安装Android SDK的详细步骤,包括配置环境变量和解决“Failed to fetch URL https://dlssl.google.com/”错误的方法。本文详细介绍了如何在该系统上顺利安装并配置Android SDK,确保开发环境的稳定性和高效性。此外,还提供了解决网络连接问题的实用技巧,帮助用户克服常见的安装障碍。 ... [详细]
  • 深入解析 Android 中 EditText 的 getLayoutParams 方法及其代码应用实例 ... [详细]
  • 今天我开始学习Flutter,并在Android Studio 3.5.3中创建了一个新的Flutter项目。然而,在首次尝试运行时遇到了问题,Gradle任务 `assembleDebug` 执行失败,退出状态码为1。经过初步排查,发现可能是由于依赖项配置不当或Gradle版本不兼容导致的。为了解决这个问题,我计划检查项目的 `build.gradle` 文件,确保所有依赖项和插件版本都符合要求,并尝试更新Gradle版本。此外,还将验证环境变量配置是否正确,以确保开发环境的稳定性。 ... [详细]
  • 深入解析HTTP网络请求API:从基础到进阶的全面指南
    本文全面解析了HTTP网络请求API,从基础到进阶,详细介绍了Android平台上的两种原生API——HttpUrlConnection和HttpClient。这两种API通过对底层Socket的封装,提供了高效、灵活的网络通信功能。文章不仅涵盖了基本的使用方法,还深入探讨了性能优化、错误处理和安全性等方面的高级主题,帮助开发者更好地理解和应用这些工具。 ... [详细]
author-avatar
思念着你2502859117
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有