Android开发环境搭建及动态库开发

一、Android开发环境搭建(基于Ubuntu14.04

1JDK

JDKJavaDevelopment Kit)是整个Java的核心,包括了Java运行环境、Java工具和Java运行库。安装步骤如下:

1)将JDK安装包(jdk-7u25-linux-x64.tar.gz)拷贝到/usr/local/development/路径下,并解压缩此安装包,生成jdk1.7.0_25文件夹;

2)创建文件/etc/profile.d/development.sh,将下面的内容复制到该文件;

export
JAVA_HOME=/usr/local/development/jdk1.7.0_25
export
JRE_HOME=$JAVA_HOME/jre
export
CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export
PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
3)重启电脑,使用java
-version命令检查JDK是否安装成功,若成功,应该显示如下信息:
java
version "1.7.0_25"
Java(TM)
SE Runtime Environment (build 1.7.0_25-b15)
Java
HotSpot(TM) 64-Bit Server VM (build 23.25-b01, mixed mode)
注意,ubuntu默认已经安装了openjdk,所以就算不安装jdk,执行java
-version也不会报错,但是报告的信息和安装了jdk是不一样的,请注意区分。

2ADT-BUNDLE集成开发环境

ADT-bundle集成开发环境(ADTAndroidDevelopment Tools)包括EclipseADTAndroidSDK,使用集成开发环境可以直接进行Android开发。

1)将adt-bundle-linux-x86_64-20130522.zip解压缩到指定安装路径(以/home/cheng/Jobs/Android/为例),生成的adt-bundle-linux-x86_64-20130522文件夹下包括eclipssdk两个文件夹,eclipse文件夹包括eclipseadt插件,sdk文件夹包括AndroidSDK

2)终端中,打开~/.bashrc文件(vim~/.bashrc,sdk文件夹下面的platform-toolstools加入到环境变量,如:

exportPATH=$PATH:/home/cheng/Jobs/Android/adt-bundle-linux-x86_64-20130522/sdk/platform-tools

exportPATH=$PATH:/home/cheng/Jobs/Android/adt-bundle-linux-x86_64-20130522/sdk/tools

3)保存~/.bashrc,并使用source~/.bashrc命令使设置生效;

4)查看adb的版本号(adbversion),如出现如下提示,则表明缺少32位运行时库,使用命令sudoapt-get install ia32-libs安装此库即可;(14.04: lib32z1 lib32ncurses5 lib32bz2-1.0)

heneng@cheng-laptop1:~$adb version

bash:/home/cheng/Android/adt-bundle-linux-x86_64-20130522/sdk/platform-tools/adb:No such file or directory

5)将apache-ant-1.9.1-bin.zip解压缩到指定安装路径,打开~/.bashrc,将ant加入环境变量:

exportPATH=$PATH:/home/cheng/Android/apache-ant-1.9.1/bin

保存此文件,并使用source~/.bashrc使设置生效;在终端输入ant-version查看设置是否生效

5)双击eclipse文件夹下eclipse图标,打开Eclipse,选择默认的工作路径;

6)选择Window->AndroidSDK Manager可以查看和下载各个版本的AndroidSDK

7)通过Window->AndroidVirtual Device Manager可以管理安卓虚拟设备;在打开的界面中新建一个安卓虚拟设备Device1,供以后调试使用;

8)新建并运行一个新的Android项目:

  1. File->New->AndroidApplication Project,新建Android项目,并填写项目的相关信息,项目代码不需要更改;

  2. 在左边的PackageExplorer界面中选中新建的项目,选择Run->RunConfigurations弹出设置界面,在AndroidTargetCommon三个图标中选择Target页面,选中第三项“Automaticallypick...”,并选择新建的安卓虚拟设备Device1,点击“Apply”,并确定;

  3. 点击Run->Run,选择以“AndroidApplication”方式运行,即会启动虚拟设备,虚拟设备启动以后,需要向下滑动才能解锁,若此时无应用程序弹出,再次点击Run->Run,即会出现”HelloWorld”

    1. 3NDK

首先介绍一下jnijavanativeinterface),jniJava的功能特性之一,jnijava调用native机制(即java调用本地其他语言编写的代码),与android没有关系;ndknativedevelopment kit)是android提供的底层开发工具包,包括许多接口,这些接口都是c的,ndkgoogle公司推出的帮助Android开发者通过c\c++本地语言编写应用的开发包,包含了c\c++的头文件、库文件、说明文档和示例代码,可以理解为与WindowsPlatformSDK相似,是纯c\c++编写的,另外ndk提供的功能和库很有限。用ndk做好底层接口,生成.so链接库,用jni去调用,使用这种方式实现Android下的C\C++开发,安装步骤为:

1)将android-ndk-r8e-linux-x86_64.tar.bz2解压缩到指定安装目录(如:/home/heneng/Android),打开~/.bashrc,将ndk的路径添加到文件的末尾,如:

exportPATH=$PATH:/home/cheng/Android/android-ndk-r8e

保存文件,并使用source~/.bashrc命令使设置生效。

二、Android下开发C\C++链接库

    1. 1、测试NDK自带的Samples(以hello-jni项目为例)

1)从终端中进入相应文件夹/home/cheng/Android/android-ndk-r8e/samples/hello-jni,此文件夹下包含一些文件夹,简要介绍如下:

  1. assets文件夹:此文件夹下的文件会原封不动的打包到运行文件中,需要使用的影像文件或其他文件可以放在此文件夹下;

  2. jni文件夹:存放c\c++代码及其相应的make文件Android.mk

  3. src文件夹:存放java代码

  4. AndroidManifest.xmlAndroid程序的全局配置文件,该文件提供了Android系统所需要的关于该应用程序的必要信息。

    2)在此文件加下,依次运行下面三条命令编译代码:

    	ndk-build
    android
    	update project --path .(注意最后有一个”.”
    ant
    	release
    运行完毕以后,在libs文件夹下生成了libhello-jni.so,此动态库可工java程序调用。

    3)打开eclipse软件(/home/cheng/Android/adt-bundle-linux-x86_64-20130522/eclipse/eclipse),点击File->Import打开导入界面,选择Android选项下的”ExistingAndroid Code IntoWorkspace”,点击“Next”按钮;点击browse按钮,选择hello-jni项目的路径/home/cheng/Android/android-ndk-r8e/samples/hello-jni,点击Finish导入hello-jni项目;

    4)在PackageExplorer中,选中hello-jni项目,在Run->RunConfigurations中设置相应的安卓虚拟设备;

    5)选择Run->Run即可运行程序,安卓虚拟设备上显示“Hellofrom JNI !”

    2、接口命名方式

    1hellojni.c文件中:

    Java_com_example_hellojni_HelloJni_stringFromJNI

    首先是Java,然后com_example_hellojni是包名,HelloJni是相应的类名,stringFromJNI是类中的方法名。

    3NDK代码调试方法

    可以使用以下两种方法调试NDK代码:

    1打印日志的方式,在NDK的代码中添加头文件#include<android/log.h>,即可使用LOGILOGE打印日志信息,程序运行时,日志信息显示在eclipseLogCat中;

    2)使用ndk-gdb进行调试,具体见/home/cheng/AndroidDevelopment/android-ndk-r8e/docs/NDK-GDB.html说明文档。

    4、参考资料

    http://developer.android.com/tools/sdk/ndk/index.html

    http://www.ibm.com/developerworks/cn/opensource/tutorials/os-androidndk/section3.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值