Android
文章平均质量分 62
nodeathphoenix
这个作者很懒,什么都没留下…
展开
-
Android NDK 工具链的使用方法(Standalone Toolchain)
首先需要确定目标机器的指令集。如果是 x86 的机器,用 x86-4.4.3 版本的工具链;如果是 arm 指令的,用 arm-linux-androideabi-4.4.3 版本 (x86-4.4.3 和 arm-linux-androideabi-4.4.3 位于ndk目录中)1、gcc 的sysroot 选项sysroot 选项设定 gcc 在编译源码的时候,寻找头文件和库文件的转载 2014-04-25 16:10:51 · 1526 阅读 · 0 评论 -
c++代码通过JNI调用Java代码时用到的签名信息如何获取
大家都知道,如果在c++里通过JNI的方式调用Java代码时,需要用到java类和类成员方法的签名信息。但是这些签名信息的可读性确实太差了,如果要自己人工来根据Java类或者类成员方法来写这些签名信息那确实是一件非常痛苦的事情。那有办法能简单地得到这些Java类和成员方法的签名信息吗?有的,下面我就介绍下如何获取签名信息。1、编译Java代码,生成中间代码class文件2、在cmd中切换到原创 2016-05-18 10:58:23 · 1008 阅读 · 0 评论 -
Android Service
Android Service 分本地service和remote service, 前者和调用者在一个进程内,使用方法很简单,后者和调用者不在同一个进程。1. remote service如何拿到对应的IBinder对于remote service,client端可以用bindService()绑定到一个service.Android系统调用service的onBind(原创 2016-04-23 23:51:02 · 399 阅读 · 0 评论 -
Native code usage and analysis
native关键字用法 native是与C++联合开发的时候用的!java自己开发不用的! -------------------------------------------------------------------------------- 使用native关键字说明这个方法是原生函数,也就是这个方法是用C/C++语言实现的,并且被编译成了DLL,由java去调用。这些转载 2011-11-07 17:19:30 · 1055 阅读 · 0 评论 -
Android Application.mk和Android.mk 同在应用程序里的jni目录时交叉编译步骤
1> 先配置ndk相关环境 进入到cygwin的/home/username目录,username是你当前登录机器的用户名,修改该目录下的.bash_profile,在文件的尾部加入如下代码,设置ndk安装的根目录。 NDK_ROOT=/cygdrive/d/workdoc_tool/android_env_build/windows/android-ndk-原创 2012-06-22 11:26:03 · 8965 阅读 · 0 评论 -
Android程序编译原理之浅析
Android build/core下的编译脚本里会用到变量NDK_ROOT和NDK_PROJECT_PATH。但是这两个变量你都不是必须显式地设置对应环境变量。因为如果没有定义NDK_ROOT,脚本里拿字符串"build/core"去匹配当前脚本的全路径,截取该字符串前面的部分即是NDK_ROOT了。如果定义了NDK_PROJECT_PATH,则脚本会在该路径下去找jni目录下的 applica原创 2012-06-22 10:42:04 · 11787 阅读 · 1 评论 -
Java 中通过jni接口调用native code
在上上篇中已经介绍了如何编译native code 生成 so动态库,这里再介绍下Java中如何通过JNI接口来调用动态库中的native code方法。 通过此篇文章,我们可以认识和了解如何完整地在Android的java code中调用native code。 1 创建一个 android project, 名字叫Why 2 在工程Why中添加一个Java类,class名为原创 2011-11-07 17:56:59 · 4824 阅读 · 0 评论 -
Windows Android NDK Compile -----android-ndk-r6b
NDK 下载地址 : http://developer.android.com/sdk/ndk/index.html Cygwin 下载地址 :http://www.cygwin.com 1 Cygwin 安装 Cygwin安装就很简单啦,直接下一步就行。唯一需要注意的就是,因为我们在cygwin中编译ndk的时候需要make和gcc,所以我们在Select Packages原创 2011-11-04 11:50:06 · 3270 阅读 · 0 评论 -
Android.mk文件语法规范
Android.mk文件语法规范根据eoeandroid上的的连载,进行一些更新、修改和加亮。今天翻译ANDROID-MK.TXT文件(英文原文件在/development/Ndk/Docs/android-mk.txt)Android.mk文件语法规范Introduction:Android.mk编译文件是用来向Android NDK描述你的C,C++源代码文件的,这转载 2012-06-22 12:21:01 · 934 阅读 · 0 评论 -
Android NDK开发轻松入门
简介:AndroidNDK是能使Android应用开发者把从c/c++编译而来的本地代码嵌入到应用包中的一系列工具的组合。注意:AndroidNDK只能用于Android1.5及以上版本中。I. Android NDK 目标:Android虚拟机允许你的应用在源码中通过JNI调用本地代码中实现的方法们。概括起来,这表示:-你的应用的源中要声明一个或多个方法,这些转载 2012-06-20 20:48:35 · 993 阅读 · 0 评论 -
Android application链接c++库
APP_STL := gnustl_static指定application里要链接的标准c++库。如果不指定,默认情况下,使用最小化的c++运行时系统库。但是似乎APP_STL只是对动态库有效,如果是exe程序,则没有效果(据说是ndkr6的一个bug),需要显示地指定用gnustl_static。如Android.mk里:LOCAL_STATIC_LIBRARIES := lib原创 2013-10-15 11:03:10 · 7331 阅读 · 0 评论 -
Binder通信
AIDL 文件: package com.test.demo; interface ITestService { int Add(); } Build Java工程生成ITestService.java文件:/* * This file is auto-generated. DO原创 2016-04-23 21:27:35 · 561 阅读 · 0 评论