安卓NDK
杨过悔
这个作者很懒,什么都没留下…
展开
-
NDK调试
http://www.it165.net/pro/html/201410/24943.html NDK DEBUG方法 2014-11-26 0 个评论 收藏 我要投稿 NDK中的常见错误:Fatal signal 11 (SIGSEGV) at 0xdeadbaad (code=1)signal 1转载 2015-10-15 15:27:57 · 449 阅读 · 0 评论 -
Android的NDK开发(3)————JNI数据类型的详解
http://blog.csdn.net/luhuajcdd/article/details/7750158 在Java中有两类数据类型:primitive types,如,int, float, char;另一种为reference types,如,类,实例,数组。 注意:数组,不管是对象数组还是基本类型数组,都作为reference types存在,有专门的JNI方法取数转载 2015-10-12 15:56:35 · 300 阅读 · 0 评论 -
Android bitmap.h is not found for native code compile
添加平台ndk-build APP_PLATFORM=android-8 http://stackoverflow.com/questions/11661708/android-bitmap-h-is-not-found-for-native-code-compile原创 2015-10-12 11:01:54 · 464 阅读 · 0 评论 -
Android NDK编程浅入深出之--Android.mk
http://www.41443.com/HTML/Android/20150707/383675.html Android.mk Android.mk是一个向Android NDK构建系统描述NDK项目的GUN Makefile片段。它是每一个NDK项目的必备组件。构建系统希望它出现在jni子目录中。下面是hello-jni项目中Android.mk文件的内容。 为了更好地理解它的句法,转载 2015-10-12 09:10:31 · 278 阅读 · 0 评论 -
Android的NDK开发(4)————JNI数据结构之JNINativeMethod
原文:http://blog.csdn.net/conowen/article/details/75247441、JNINativeMethod 结构体的官方定义[cpp] view plaincopytypedef struct { const char* name; const char* signatur转载 2015-10-12 15:58:43 · 360 阅读 · 0 评论 -
NDK开发时需要注意的问题
书上的例子基本是叫我们如何在eclipse中开发NDK,但是我遇到过多次问题,导致整个app无法直接运行,主要原因是ADT的检测规则等,而我们普通开发NDK只需要.so库就可以了,所以我们最好将NDK的相关源码独立到jni目录下且app目录之外,将编译好的文件导入libs即可,这样可以省去不少麻烦,这个是很久之前学NDK时(当时就是玩玩),就想记录的笔记,现在忘却了,折腾了一番,虽然问题不大却浪费原创 2015-10-12 09:59:25 · 308 阅读 · 0 评论 -
Android NDK编程浅入深出之--Android.mk(3)
APP_OPTIM:该变量可以被设置为release或debug以改变生成的二进制文件的优化级别。默认情况下使用的是release模式,并且此时生成的二进制文件被高度优化。该变量可以被设置为debug模式以生成更容易调试的未优化二进APP_OPTIM:该变量可以被设置为release或debug以改变生成的二进制文件的优化级别。默认情况下使用的是release模转载 2015-10-12 09:20:20 · 510 阅读 · 0 评论 -
Android NDK编程浅入深出之--Android.mk(2)
在Android平台上使用原生组件的推荐和支持的方法是将它们打包成共享库。但是,为了方便测试和进行快速原型设计,Android NDK也支持构建独立的可执行文件。这些独立的可执行文件是不用打包成APK文件就可以复制到Andr在Android平台上使用原生组件的推荐和支持的方法是将它们打包成共享库。但是,为了方便测试和进行快速原型设计,Android NDK也支持转载 2015-10-12 09:19:03 · 296 阅读 · 0 评论 -
win7+mingw+opengl+eclipse
1.下载glut这里就不上传了,百度glut-3.7.6-bin.zip即可目录 2.用文本新建Demo10.cpp #include #include #include void Init() { glClearColor(0, 0, 0, 0); glMatrixMode(GL原创 2015-10-26 21:27:03 · 369 阅读 · 0 评论 -
Javah Error android.app.Activity not found的问题
这个问题就是classpath的问题当你指定-classpath时javah的寻找路径不会从当前目录所以你的指定你的依赖jar时必须加上当前路径例如 linux@ubuntu:~/Application/adt-bundle-linux-x86-20140321/workspace/AVIPlayer/bin/classes$ javah -classpath android.ja原创 2015-10-12 00:09:35 · 446 阅读 · 0 评论 -
安卓调用ffmpeg
ffmpeg是个linux下很受欢迎的解码库,可惜对于安卓而言他并不是最好的,这里介绍了如何在安卓中使用 1.之前在ubuntu编译安装ffmpeg,试了下,感觉不错,ffmpeg的编译也是十分简单的,推荐在ubuntu中编译,我是在虚拟机编译后直接拿过来在win7使用的(这是由于笔记的配置较低,在虚拟机跑eclise等调试比较耗内存) 2.现在我们构建ndk的头文件和源文件编原创 2015-10-14 13:45:39 · 1405 阅读 · 0 评论 -
图解FFMPEG打开媒体的函数avformat_open_input
http://blog.csdn.net/leixiaohua1020/article/details/8661601=====================================================FFmpeg的库函数源代码分析文章列表:【架构图】FFmpeg源代码结构图 - 解码FFmpeg源代码结构图 - 编码【通用】FFmpeg 源代码简转载 2015-10-14 13:32:02 · 581 阅读 · 0 评论 -
编译SDL_image
里面有一个错误的地方,SDL2_image是新建在jni下的而非src,经过试验能成功在win7下编译生成.so文件! 1) First, download the SDL_image source on this page.2) Download the demo source/assets. Copy the directory to android-project转载 2015-10-16 09:39:20 · 2905 阅读 · 0 评论 -
Android本地视频播放器开发--ffmpeg解码视频文件中的音频(1)
http://blog.csdn.net/jwzhangjie/article/details/9046427 在上一章中Android本地视频播放器开发--NDK编译FFmpeg能够获取编译出来的ffmpeg库,接下来就是调用ffmpeg来实现解码,这里我们先解码音频,然后在播放音频,同时为了适应性我会用不同的方法进行播放例如使用Android提供的AudioTrack,SDL、Open转载 2015-10-13 22:42:40 · 513 阅读 · 0 评论 -
Android ndk报错error: format not a string literal and no format arguments [-Werror=format-security]
解决方案:在对应项目的jni/Application.mk添加一句话 APP_CFLAGS += -Wno-error=format-security原创 2015-10-14 12:11:07 · 576 阅读 · 0 评论 -
bin/ld.exe: error: cannot find -landroid等问题
LOCAL_LDLIBS指定lib,该lib由不同的平台的系统提供,我们看看D:\ProgramFiles\android-ndk-r10\platforms该目录下提供了ndk的版本的库文件 使用ndk-build,默认使用最低版本的库文件,此时容易出现找不到一些库文件 此时使用ndk-build APP_PLATFORM=android-9指定平台原创 2015-10-13 22:37:01 · 2717 阅读 · 0 评论 -
undefined reference to `av_register_all'
ffmpeg是C语言写的,所以在引入C头文件时extern "C"{#include #include }原创 2015-10-14 00:54:03 · 3350 阅读 · 0 评论 -
use of UINT64_C in libavutil/common.h
https://ffmpeg.org/pipermail/ffmpeg-devel/2010-May/095488.html 在D:\ProgramFiles\android-ndk-r10\sources\ffmpeg-2.8\android\arm\include\libavutil\common.h添加 /** * 具体解释 : https://ffmpeg.org/原创 2015-10-13 23:32:09 · 408 阅读 · 0 评论 -
如何成功运行SDL官方提供的Android平台的Demo
http://www.linuxidc.com/Linux/2015-01/112631.htm 编写说明:SDL的官方提供了一个Android的demo模板SDLActivity,无法直接运行,按照官方的文档操作过程中也会遇到很多问题,这里把我成功编译并运行的过程记录下来,希望对大家有所帮助!SDL简介:SDL是Simple DirectMedia Layer的缩写,它是一套开源的C转载 2015-10-14 19:23:53 · 731 阅读 · 0 评论 -
FFMPEG视音频编解码零基础学习方法
http://blog.csdn.net/leixiaohua1020/article/details/15811977转载 2015-10-14 16:39:57 · 385 阅读 · 0 评论 -
NDK测试网速
1.这是个官方的例子,在NDK运行正常http://curl.haxx.se/libcurl/c/chkspeed.html 2.原创 2015-10-20 15:22:28 · 458 阅读 · 0 评论 -
NDK使用CURL
CURL是个依赖socket的小工具,可以在官方下载,并自已编写Android.mk的文件进行编译我们是使用静态库的方式调用CURL的,动态库只能在system,所以不能使用动态库 1.我们Android.mk在根目录(我实在虚拟机编译的,刚刚关闭了虚拟机,这部分以后...)其实就是普通的编译.c的make语法在lib目录2.在电脑搭建Jboss服务器,注意绑定0.原创 2015-10-20 13:56:13 · 978 阅读 · 0 评论 -
makefile中关于all和.PHONY .cpp.o
转自:http://blog.163.com/benben_long/blog/static/199458243201110230292490/请编写一个makefile同时编译、链接下面两个程序:main1.c:#includeint main(void){ printf("main1\n");}main2.c:#includeint main(vo转载 2015-11-03 17:28:22 · 413 阅读 · 0 评论 -
安卓安装wget
wget安卓版编译好的http://download.csdn.net/detail/u013571243/9188781 wget是个非常好用的工具,在linux几乎离不开它1.安卓既然是基于linux的,我想他必须支持wget的2.我们进入安卓手机3.接着echo $PATH这个是安卓的path变量,我们把wget放在/vendor/bin里4.由于原创 2015-10-17 13:18:09 · 6204 阅读 · 0 评论 -
使用arm-linux-androideabi-readelf命令
(PROJECT)libs/armeabi#arm-linux-androideabi-readelf -d math #其中的选项"-d",目的是显示加载的动态库原创 2015-10-18 12:32:50 · 1767 阅读 · 0 评论 -
ndk在真机调试
有个需要的细节 1.打开调试2.选择调试的App这两个步骤缺一不可原创 2015-10-16 23:12:23 · 314 阅读 · 0 评论 -
NDK基本数据类型及操作
1.数据类型2.引用类型 3.数据和对象类型的基本操作 (1)string类型,在native中并不提供修改string类型函数,因为java中也是步伐修改存在的string的类型即string类型在java中不变类型的jstring javaString;javaString = (*env)->NewStringUTF(env, "Hello World!"原创 2015-10-17 16:53:14 · 1319 阅读 · 0 评论 -
添加头文件include
出现的提示信息如下:Multiple markers at this line - Syntax error - Type ‘JNIEnv‘ could not be resolved - Type ‘JNICALL‘ could not be resolved是由于没有将jni.h导入的缘故,而这个文件在ndk的目录下面。所以,参照以下步骤:Project Prop原创 2015-10-16 22:22:07 · 553 阅读 · 0 评论 -
crtbegin_dynamic.o: in function _start:crtbrand.c(.text+0x78): error: undefined reference to 'main
LOCAL_LDFLAGS += -shared原创 2015-10-17 11:41:18 · 5167 阅读 · 0 评论 -
No symbol table is loaded. Use the "file" command.解决方法
在Application.mk添加APP_CFLAGS += -Wno-error=format-security -g-g是makefile的规则原创 2015-10-16 23:09:35 · 1038 阅读 · 0 评论 -
SDL_image之hello
在这里我们将之前编译好的SDL_image和SDL等导入jni目录中,整个目录涉及到vedio和audio的各种资源,待会上传 链接http://download.csdn.net/detail/u013571243/9186229 由于整个文件很大,所以推荐用eclipse来调试,从r20版本开始ndk的支持就很不错了,跟踪bug比较方便由于我们不再eclipse中添原创 2015-10-16 13:05:00 · 1173 阅读 · 0 评论 -
linux ar命令用法
当我们的程序中有经常使用的模块,而且这种模块在其他程序中也会用到,这时按照软件重用的思想,我们应该将它们生成库,使得以后编程可以减少开发代码量。这里介绍命令ar,用来对库操作。1.ar基本用法 ar命令可以用来创建、修改库,也可以从库中提出单个模块。库是一单独的文件,里面包含了按照特定的结构组织起来的其它的一些文件(称做此库文件的member)。原始文件的内容、模式、时间戳、属主、组等属转载 2015-11-03 17:15:36 · 8247 阅读 · 0 评论 -
几个简单适合小程序的Makefile
几个简单适合小程序的Makefile,可直接拷贝使用,自己mark一下,这样长时间不用Makefile也不用去看手册了0.只有一个文件# 变量的定义,方便使用CC = gccCCFLAGS = -O2 -sBIN = testOBJ = root_password_tool_win32.o$(BIN) : $(OBJ) $(C转载 2015-11-03 17:01:01 · 939 阅读 · 0 评论 -
BAT脚本如何自动执行 adb shell 以后的命令
http://mzywqwq.blog.163.com/blog/static/958701220134842449172/ 参考:http://zhidao.baidu.com/question/496847483.html普通情况,可以直接用 ”adb shell rm /data/tmp/xx.sh“ 之类的命令执行一条指令。需要root权限情况,如果转载 2015-10-18 20:01:51 · 13142 阅读 · 1 评论 -
NDK一条"龙"开发native的可执行
1.我经常使用可执行的文件方式来打印程序的情况,这个有时比调试更方便 2.用eclipse创建jni项目,在jni下放置build.batadb push ../libs/armeabi/main /projectadb shell < cmd.shpause cmd.shsumount -o remount,rw rootfs /cd /原创 2015-10-18 21:31:02 · 308 阅读 · 0 评论 -
编译opencv该注意的问题
1.由于3.0版本官方只提供vs的win库,我们有不想在vs使用,我们可以选择mingw和opencv和eclipse的搭配,不过编译的时候要注意几个问题2.首先你不可随意下载编译好的opencv,因为他是依赖编译时指定的mingw的版本的,如果mingw的版本的差异大,必定不成功,例如用网上或官网的mingw来运行QT所带的mingw所编译的opencv必定失败3.如果你的电脑安装了py原创 2015-10-19 20:47:21 · 603 阅读 · 0 评论 -
linux下静态库的ranlib使用
inux下编译静态库的时候,ar不带任何选项打包成.a文件后,对其进行ranlib操作有 什么用,如果不进行ranlib操作会有什么后果,我编译的时候没用这步操作也能正常运行,请达人给讲解一下。谢谢。http://www.linuxsir.org/main/doc/gnumake/GNUmake_v3.80-zh_CN_html/make-11.html 更 新静态库的符号索引转载 2015-11-03 17:18:31 · 951 阅读 · 0 评论 -
MakeFIle $@,$^,$<
Makefile $@, $^, $$@ 表示目标文件$^ 表示所有的依赖文件$$? 表示比目标还要新的依赖文件列表如一个目录下有如下文件:$ lshello.c hi.c main.c Makefile按照 Makefile 规则规规矩矩的写:main: main.o hello.o hi.o gcc转载 2015-11-03 17:16:27 · 281 阅读 · 0 评论 -
opencv-2.4.9与VS2012配置(Win7)
http://www.tuicool.com/articles/nURrauM 第一步:下载opencv-2.4.9第二步:运行opencv-2.4.9,我的目录为:F:\Program Files\opencv第三步:环境配置控制面板--->系统---->高级系统设置--->环境变量然后设置path路径最后确认:至此环境配置已经结束第四转载 2015-10-19 00:27:49 · 473 阅读 · 0 评论 -
NDK链接main(可执行)链接so
1.在win系统中动态链接库是会搜索当前路径的,我测试我的OPP版本4.2是无法的,估计是版本问题解决:把so放到system/lib中2.现在我们测试libJson,这个是我移植的动态jsoncpp原创 2015-10-18 13:10:09 · 403 阅读 · 0 评论