`
yanzhibo
  • 浏览: 22804 次
文章分类
社区版块
存档分类
最新评论
文章列表
在上一篇文章中搭建好了Eclipse下NDK环境,现在开始NDK的开发: 1、打开Eclipse,新建一个Android Project,名字就叫HelloNdk,package:org.android.code 2、然后在org.android.code 包里新建一个helloNdk的Class。. 在该类中声明本地调用的方法,如下图:   然后将项目编译一下,让Eclipse生成helloNdk的class文件,用于生成.h文件。 3、生成.h文件 启动cmd,进入项目的bin\class目录下,输入javah+空格+包名.类名。 4、编写C/C++代码 在项目中新 ...
开发应用一个关键的步骤是调试,对于NDK的C代码调试有很多种方法, 对于和Android平台相关性不大的部分代码,可以单独创建一个C/C++项目,编写测试代码,测试完成后,再编译成NDK动态库或静态库模块。 使用NDK-GDB,NDK-GDB的命令行调试方法和GDB类似,网络有很多关于GDB的教程 使用Eclipse+CDT+GDB调试android NDK程序 实时调试,不过这种方法设置起来不是十分方便,调试起来需要在GDB和Eclipse之间来回切换,适合于有经验的程序员。 这里介绍一个开发嵌入式系统调试的“终极工具:-)”-printf. 开发嵌入式系统调试常用的 ...
配合android.mk 使用的make 文件还有一个application.mk ,大部分情况无需修改该文件,下面也来自网络翻译 Application.mk文件 简介: —————————– 要将C\C++代码编译为SO文件,光有Android.mk文件还不行,还需要一个Application.mk文件。 本文档是描述你的Android应用程序中需要的本地模块的Application.mk的语法使用,要明白如下。 Application.mk目的是描述在你的应用程序中所需要的模块(即静态库或动态库)。 Application.mk文件通常被放置在$PROJECT/jni/A ...
NDK项目一个重要组成是它的make 文件 –android.mk. 下面部分来自网络翻译(省得我再翻译了:-). 注:大部分情况只需参考HelloJni 和twoLibs 的android.mk 文件即可,如果你想搞清楚android.mk 中定义变量的具体含义,可以参考下面翻译。 ...
做Android NDK开发时,c代码需要用ndk-build来进行编译,而java代码则需要用Android sdk编译。 编译c代码有两种方法: 一、写好c代码后,然后用cygwin搭建ndk-build环境,用ndk-build来编译出相关的.so文件(libs目录)之后, 再用eclipse里去编译java程序,从而使用.so文件。该方法在上一篇搭建NDK环境有介绍。 二、利用eclipse完全可以达到编译.so的目的。 首先,先装上CDT吧,这是Eclipse的C/C++环境插件,装上它后你就可以在Eclipse里创建C/C++项目和代码文件了。插件的安装有两种方式,一种是 ...
一、下载Android NDK 您可以下载NDK r8 for Windows或NDK r8 for Windows安装包,下载地址:http://developer.android.com/sdk/ndk/index.html 下载后解压到你喜欢的路径,例如笔者的路径: D:\Develope\Android\android-ndk-r8。注意跟Android安装一样,目录不要有空格。 Android NDK包含build,docs,platforms,prebuilt,samples,sources,tests,toolchains,GNUmakefile,ndk-buil ...
JNI:全称Java Native Interface。是java平台的一部分 JNI允许Java代码和其他语言写的代码进行交互。JNI 是本地编程接口,它使得在 Java 虚拟机(VM) 内部运行的 Java 代码能够与用其它编程语言(如 C、C++ 和汇编语言)编写的应用程序和库进行交互操作。类似于.Net Framework上的p/invoke,可以让C#或Visual Basic.Net可以调用C/C++的API,所以说JNI和Android没有关系,在PC上开发Java的应用,如果运行在Windows平台使用 JNI是是经常的。比如一些算法的实现。 JNI的副作用: 请记住, ...
把十六进制颜色转化为color对象 ColorTranslator.FromHtml("#FF0000") 或 ColorTranslator.FromHtml("Red"); 把color对象转化为十六进制颜色 ColorTranslator.ToHtml(Color.FromArgb(255,255,255)) 或 ColorTranslator.ToHtml(Color.Red); 转自:http://www.2guys.cn/collection/17461975481975.html
在VC2003中新建一程序,选择项目--》添加类--》MFC--》类型库中的MFC类。 然后选择“文件”单选按钮,默认选择的是“注册表”单选按钮。 从“位置”的“...”按钮(浏览)中选择word安装路径中的MFWORD.OLB文件, 然后在“列表”中就会显示所有的类型,选择需要使用的类型,添加到右侧。 完成后,会把选择的类的头文件添加到你的项目中,这样你就可以使用这些类 操作word文档了。 首先要包含头文件,即需要的类所在的.h文件。 以下为使用这些类进行读取Word中表格数据的实现: CApplication app; CDocuments docs; CDo ...
sqlite3记录被清除之后,如果表中有自增长字段,下次再插入数据,会继续延续之前自增长字段的历史记录。 清除方法: 在Sqlite3建立带自增长字段的表时,Sqlite3会创建这个表存放自增长序列: “sqlite_sequence” 可以用Create、Read、Update、Delete操作该表。 使用Delete和Update可以清除和修改slite_sequence存储的表的自增长id delete from sqlite_sequence where name='TableName'; --注意表名区分大小写 update sqlite_se ...
列中数据的最大大小(以字节为单位)。默认值是从参数值推导出的。 备注 设置Size仅影响参数的输入值。此属性不影响返回值和输出参数。 Size属性用于二进制和字符串类型。对于SqlType.String类型的参数,
BYTE byteArray[100]; // with some values CString strByte; for ( int i = 0; i < 64; i++ ) { strByte.Format( "%02x", byteArray[i]); // output the string }
TCHAR.H Routine _UNICODE & _MBCS Not Defined _MBCS Defined
char :单字节变量类型,最多表示256个字符, wchar_t :宽字节变量类型,用于表示Unicode字符, 它实际定义在<string.h>里:typedef unsigned short wchar_t。 为了让编译器识别Unicode字符串,必须以在前面加一个“L”,定义宽字节类型方法如下: wchar_t c = `A' ; wchar_t * p = L"Hello!" ; wchar_t a[] = L"Hello!" ; 其中,宽字节类型每个变量占用2个字 ...
#include <string> #include <vector> #include <iostream> using namespace std; typedef basic_string<char>::size_type S_T; static const S_T npos = -1; ////trim指示是否保留空串,默认为保留。 vector<string> tokenize(const string& src, string tok, bool trim=false, string null_subst=& ...
Global site tag (gtag.js) - Google Analytics