1.错误1: android mk文件没有定义
$ ndk-build
Android NDK: Your APP_BUILD_SCRIPT points to an unknown file: /cygdrive/e/heima5
/day2/code/ndkhelloworld/jni/Android.mk
/cygdrive/d/TDDownload/android-ndk-r6-windows/android-ndk-r6/build/core/add-appl
ication.mk:116: *** Android NDK: Aborting...    .  Stop.

错误2: c代码编译不通过
$ ndk-build
Compile thumb  : hello <= Hello.c
E:/heima5/day2/code/ndkhelloworld/jni/Hello.c: In function 'Java_cn_itcast_ndk1_
DemoActivity_helloFromJNI':
E:/heima5/day2/code/ndkhelloworld/jni/Hello.c:8: error: 'ctr' undeclared (first
use in this function)
E:/heima5/day2/code/ndkhelloworld/jni/Hello.c:8: error: (Each undeclared identif
ier is reported only once
E:/heima5/day2/code/ndkhelloworld/jni/Hello.c:8: error: for each function it app
ears in.)
E:/heima5/day2/code/ndkhelloworld/jni/Hello.c:8: error: expected ';' before 'c'
make: *** [/cygdrive/e/heima5/day2/code/ndkhelloworld/obj/local/armeabi/objs/hel
lo/Hello.o] Error 1

错误3:方法的签名不对应
java.lang.reflect.Method.invokeNative
java.lang.UnsatisfiedLinkError

错误5:
02-11 03:24:53.925: E/AndroidRuntime(5763): Caused by: java.lang.UnsatisfiedLinkError: Library Hello not found
静态代码块里面加载的库文件不正确

6.C库中逻辑错误:
02-11 03:28:59.074: INFO/ActivityManager(59): Displayed activity cn.itcast.ndk1/.DemoActivity: 1010 ms (total 246132 ms)
02-11 03:29:00.844: INFO/DEBUG(31): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
02-11 03:29:00.844: INFO/DEBUG(31): Build fingerprint: 'generic/sdk/generic/:2.2/FRF91/43546:eng/test-keys'
02-11 03:29:00.854: INFO/DEBUG(31): pid: 6262, tid: 6262  >>> gefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefgefge <<<
02-11 03:29:00.854: INFO/DEBUG(31): signal 11 (SIGSEGV), fault addr bee30000
02-11 03:29:00.854: INFO/DEBUG(31):  r0 bee2f7c0  r1 bee2f7c4  r2 bee2f7c7  r3 00000839
02-11 03:29:00.854: INFO/DEBUG(31):  r4 00000067  r5 00000004  r6 4185153f  r7 4186bd14
02-11 03:29:00.854: INFO/DEBUG(31):  r8 bee2f7d0  r9 4186bd0c  10 4186bcf4  fp 00000000
02-11 03:29:00.854: INFO/DEBUG(31):  ip 80901428  sp bee2f7b8  lr 8090033b  pc afd1cb6c  cpsr 20000030
02-11 03:29:01.206: INFO/DEBUG(31):          #00  pc 0001cb6c  /system/lib/libc.so
02-11 03:29:01.214: INFO/DEBUG(31):          #01  pc 00000338  /data/data/cn.itcast.ndk1/lib/libhello.so
02-11 03:29:01.214: INFO/DEBUG(31): code around pc:
02-11 03:29:01.224: INFO/DEBUG(31): afd1cb4c b005d1e8 bdf01c28 00023828 000000f0
02-11 03:29:01.224: INFO/DEBUG(31): afd1cb5c 1c02b510 3201e000 2b007813 5cccd1fb
02-11 03:29:01.224: INFO/DEBUG(31): afd1cb6c 330154d4 d1fa2c00 46c0bd10 428b7803
02-11 03:29:01.234: INFO/DEBUG(31): afd1cb7c 2b00d004 3001d001 2000e7f8 46c04770
02-11 03:29:01.234: INFO/DEBUG(31): afd1cb8c 2300b510 3301e004 d1012a00 e0042000
02-11 03:29:01.234: INFO/DEBUG(31): code around lr:
02-11 03:29:01.244: INFO/DEBUG(31): 80900318 4b0db510 a901b082 681b447b 46681c04
02-11 03:29:01.244: INFO/DEBUG(31): 80900328 23659300 2366700b 2367704b f7ff708b
02-11 03:29:01.244: INFO/DEBUG(31): 80900338 6822efea 23a74905 4479009b 1c2058d3
02-11 03:29:01.254: INFO/DEBUG(31): 80900348 b0024798 46c0bd10 00000034 00000016
02-11 03:29:01.265: INFO/DEBUG(31): 80900358 64636261 6c6c6568 7266206f 6a206d6f
02-11 03:29:01.265: INFO/DEBUG(31): stack:
02-11 03:29:01.274: INFO/DEBUG(31):     bee2f778  00000000 
02-11 03:29:01.284: INFO/DEBUG(31):     bee2f77c  afd103f0  /system/lib/libc.so
02-11 03:29:01.284: INFO/DEBUG(31):     bee2f780  afd41724  /system/lib/libc.so
02-11 03:29:01.305: INFO/DEBUG(31):     bee2f784  000000dc 
02-11 03:29:01.305: INFO/DEBUG(31):     bee2f788  000013fc 
02-11 03:29:01.305: INFO/DEBUG(31):     bee2f78c  000001b8 
02-11 03:29:01.305: INFO/DEBUG(31):     bee2f790  80813b00  /system/lib/libdvm.so
02-11 03:29:01.305: INFO/DEBUG(31):     bee2f794  0000ccb0  [heap]
02-11 03:29:01.305: INFO/DEBUG(31):     bee2f798  4186bcf4 
02-11 03:29:01.305: INFO/DEBUG(31):     bee2f79c  afd0be39  /system/lib/libc.so
02-11 03:29:01.314: INFO/DEBUG(31):     bee2f7a0  00000000 
02-11 03:29:01.314: INFO/DEBUG(31):     bee2f7a4  b0004998  /system/bin/linker
02-11 03:29:01.314: INFO/DEBUG(31):     bee2f7a8  b0014df4 
02-11 03:29:01.314: INFO/DEBUG(31):     bee2f7ac  80900319  /data/data/cn.itcast.ndk1/lib/libhello.so
02-11 03:29:01.314: INFO/DEBUG(31):     bee2f7b0  df002777 
02-11 03:29:01.314: INFO/DEBUG(31):     bee2f7b4  e3a070ad 
02-11 03:29:01.314: INFO/DEBUG(31): #00 bee2f7b8  0000aa50  [heap]
02-11 03:29:01.314: INFO/DEBUG(31):     bee2f7bc  8090033b  /data/data/cn.itcast.ndk1/lib/libhello.so
02-11 03:29:01.334: INFO/DEBUG(31): #01 bee2f7c0  64636261 
02-11 03:29:01.334: INFO/DEBUG(31):     bee2f7c4  65676665 
02-11 03:29:01.334: INFO/DEBUG(31):     bee2f7c8  66656766 
02-11 03:29:01.334: INFO/DEBUG(31):     bee2f7cc  67666567 
02-11 03:29:01.334: INFO/DEBUG(31):     bee2f7d0  65676665 
02-11 03:29:01.334: INFO/DEBUG(31):     bee2f7d4  66656766 
02-11 03:29:01.334: INFO/DEBUG(31):     bee2f7d8  67666567 
02-11 03:29:01.334: INFO/DEBUG(31):     bee2f7dc  65676665 
02-11 03:29:01.334: INFO/DEBUG(31):     bee2f7e0  66656766 
02-11 03:29:01.334: INFO/DEBUG(31):     bee2f7e4  67666567 
02-11 03:29:01.334: INFO/DEBUG(31):     bee2f7e8  65676665 
02-11 03:29:01.334: INFO/DEBUG(31):     bee2f7ec  66656766 
02-11 03:29:01.334: INFO/DEBUG(31):     bee2f7f0  67666567 
02-11 03:29:01.334: INFO/DEBUG(31):     bee2f7f4  65676665 
02-11 03:29:01.334: INFO/DEBUG(31):     bee2f7f8  66656766 
02-11 03:29:01.334: INFO/DEBUG(31):     bee2f7fc  67666567 
02-11 03:29:01.334: INFO/DEBUG(31):     bee2f800  65676665 
02-11 03:29:01.334: INFO/DEBUG(31):     bee2f804  66656766

说明c语言代码的库挂掉了.

7.需要重启模拟器:
02-11 04:00:33.934: D/dalvikvm(10670): No JNI_OnLoad found in /data/data/cn.itcast.ndk2/lib/libhello.so 0x44f3e910, skipping init

8.c语言中的数组结束是通过\0来标记的故:

char* arr[6] = {'h','e','l','l','o','\0'};//char* arr[5] = {'h','e','l','l','o'}这个会出问题

而:char* arr = "hello";则没有问题,且和上一行效果一样。

9. 使用javah生成.h文件时,

如果在D:\Android\project\ndk\bin\classes中,执行javah com.heima.ndk.ndkActivity无法访问,找不到类文件的话

那就在D:\Android\project\ndk\src中,执行javah com.heima.ndk.ndkActivity,或许能成功

NDK常见错误的更多相关文章

  1. Android NDK 开发(三)--常见错误锦集合Log的使用【转】

    转载请注明出处:http://blog.csdn.net/allen315410/article/details/41826511  Android NDK开发经常因某些因素会出现一些意想不到的错误, ...

  2. JNI常见错误整理

    ndk开发常见错误1. android.mk文件不存在 $ ndk-buildAndroid NDK: Your APP_BUILD_SCRIPT points to an unknown file: ...

  3. 初识JAVA(二)(送给Java和安卓初学者)----常见错误

    博主接着上篇的来讲哦,以后的更新中,博主会出一些练习题,有兴趣的可以做做然后吧代码粘贴到下面,大家可以一起研究学习,一起进步,本篇文章主要讲的是: 一.常见错误 二.连接上篇一起的训练 无论是什么方向 ...

  4. ubuntu 常见错误--Could not get lock /var/lib/dpkg/lock

    ubuntu 常见错误--Could not get lock /var/lib/dpkg/lock 通过终端安装程序sudo apt-get install xxx时出错:E: Could not ...

  5. coreseek常见错误原因及解决方法

    coreseek常见错误原因及解决方法 Coreseek 中文全文检索引擎 Coreseek 是一款中文全文检索/搜索软件,以GPLv2许可协议开源发布,基于Sphinx研发并独立发布,专攻中文搜索和 ...

  6. Android Fragment使用(二) 嵌套Fragments (Nested Fragments) 的使用及常见错误

    嵌套Fragment的使用及常见错误 嵌套Fragments (Nested Fragments), 是在Fragment内部又添加Fragment. 使用时, 主要要依靠宿主Fragment的 ge ...

  7. C语言初学者代码中的常见错误与瑕疵(23)

    见:C语言初学者代码中的常见错误与瑕疵(23)

  8. struts2.5框架使用通配符指定方法常见错误

    struts2.5框架使用通配符指定方法(常见错误) 在学习struts框架时经常会使用到通配符调用方法,如下: <package name="shop" namespace ...

  9. .Net常见错误

    常见错误 #1: 把引用当做值来用,或者反过来 C++ 和其他很多语言的程序员,习惯了给变量赋值的时候,要么赋单纯的值,要么是现有对象的引用.然而,在C# 中,是值还是引用,是由写这个对象的程序员决定 ...

随机推荐

  1. 链接中的href=#是什么意思呢

    链接当前页面. ------------------- 通常有如下用法: <a href="#" onclick="window.close()"> ...

  2. http服务 Web API的使用

    http服务 Web API的使用 一.概念: Web API是网络应用程序接口. 详情百度百科: http://baike.baidu.com/link?url=X1l2dlU9FlQmupX24- ...

  3. Python 根据地址获取经纬度

    方法一: 使用Geopy包 : https://github.com/geopy/geopy   (仅能精确到城镇,具体街道无结果返回) from geopy.geocoders import Nom ...

  4. Qt-剪切板

    ClipBoard 存在的意义 进程间数据共享. 方式 Drag And Drop: clipBoard的拖曳方式 app's ClipBoard 缺点 没有权限管理 在Model View中实现Dr ...

  5. Mac下安装node.js和webpack

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px "PingFang SC"; color: #393939 } p.p2 ...

  6. 重要的几个热键[Tab], [ctrl]-c, [ctrl]-d

    来源于:鸟哥的Linux私房菜 在继续后面的章节之前,这里很需要跟大家再来报告一件事,那就是我们的文字模式里头具有很多的功能按键, 这些按键可以辅助我们进行指令的编写与程序的中断呢!这几个按键请大家务 ...

  7. apache 配置静态文件缓存和开启gzip压缩

    1,设置文件静态缓存3天: 在httpd.conf 里添加如下代码: #文件静态缓存配置 <IfModule expires_module> #打开缓存 ExpiresActive on ...

  8. HDU 5880 Family View

    $AC$自动机. 用$AC$自动机匹配一次,开一个$flag$记录一下以$i$位置为结尾的最长要打$*$多少个字符,然后倒着扫描一次就可以输出了. #pragma comment(linker, &q ...

  9. Chapter 2 Open Book——37

    I couldn't concentrate on Mike's chatter as we walked to Gym, and RE. didn't do much to hold my atte ...

  10. Python学习笔记——基础篇【第二周】——解释器、字符串、列表、字典、主文件判断、对象

    目录 1.Python介绍 2.Python编码 3.接受执行传参 4.基本数据类型常用方法 5.Python主文件判断 6.一切事物都是对象 7.   int内部功能介绍 8.float和long内 ...