1、系统环境
[android@localhost~]$uname-a
Linuxlocalhost.localdomain2.6.32-71.el6.i686#1SMPWedSep101:26:34EDT2010i686i686i386GNU/Linux
[android@localhost~]$lsb_release-a
LSBVersion::core-4.0-ia32:core-4.0-noarch:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-ia32:printing-4.0-noarch
DistributorID:RedHatEnterpriseServer
Description:RedHatEnterpriseLinuxServerrelease6.0(Santiago)
Release:6.0
Codename:Santiago
[android@localhost~]$
2、准备软件
java
eclipse
android-sdk
ADT
这些软件都可以在官网上下载。
3、搭建过程
(1)安装java
[android@localhost~]$rpm-qa|grepjava
eclipse-mylyn-java-3.3.2-4.5.el6.i686
java-1.6.0-openjdk-devel-1.6.0.0-1.21.b17.el6.i686
java-1.6.0-openjdk-1.6.0.0-1.21.b17.el6.i686
tzdata-java-2010l-1.el6.noarch
gcc-java-4.4.4-13.el6.i686
java-1.5.0-gcj-1.5.0.0-29.1.el6.i686
subversion-javahl-1.6.11-2.el6.i686
ooobasis3.3-javafilter-3.3.0-9567.i586
libvirt-java-0.4.5-2.el6.noarch
lpg-java-compat-1.1.0-4.1.el6.noarch
libvirt-java-devel-0.4.5-2.el6.noarch
mysql-connector-java-5.1.12-2.el6.i686
ant-javamail-1.7.1-13.el6.i686
java-1.6.0-openjdk-javadoc-1.6.0.0-1.21.b17.el6.i686
java_cup-0.10k-5.el6.i686
[android@localhost~]$
通过命令查看当前已经安装了java的相关jdk,可以进行下一步。
(2)安装eclipse
从官网上下载的eclipse不需要按装,直接解压即可使用。如:
[android@localhostBaseEnv]$ls
ADT-18.0.0.zip
android-sdk_r18-linux.tgz
Android开发环境搭建(Linux篇).doc
eclipse
eclipse-cpp-indigo-SR2-incubation-linux-gtk.tar.gz
Linux环境搭建.doc
Linux下Android开发环境搭建.doc
[android@localhostBaseEnv]$rm-Reclipse
[android@localhostBaseEnv]$ls
ADT-18.0.0.zip
android-sdk_r18-linux.tgz
Android开发环境搭建(Linux篇).doc
eclipse-cpp-indigo-SR2-incubation-linux-gtk.tar.gz
Linux环境搭建.doc
Linux下Android开发环境搭建.doc
[android@localhostBaseEnv]$tar-zxfeclipse-cpp-indigo-SR2-incubation-linux-gtk.tar.gz
[android@localhostBaseEnv]$ls
ADT-18.0.0.zip
android-sdk_r18-linux.tgz
Android开发环境搭建(Linux篇).doc
eclipse
eclipse-cpp-indigo-SR2-incubation-linux-gtk.tar.gz
Linux环境搭建.doc
Linux下Android开发环境搭建.doc
[android@localhostBaseEnv]$cdeclipse
[android@localhosteclipse]$ls
about_filesconfigurationeclipse.iniicon.xpmp2
about.htmldropinsepl-v10.htmllibcairo-swt.soplugins
artifacts.xmleclipsefeaturesnotice.htmlreadme
[android@localhosteclipse]$ll
总用量540
drwxrwxr-x.2androidandroid40962月1703:06about_files
-rw-rw-r--.1androidandroid189092月821:55about.html
-rw-rw-r--.1androidandroid882462月1703:06artifacts.xml
drwxrwxr-x.5androidandroid40962月1703:06configuration
drwxrwxr-x.2androidandroid40962月1703:06dropins
-rwxr-xr-x.1androidandroid628142月822:16eclipse
-rw-rw-r--.1androidandroid4072月1703:06eclipse.ini
-rw-rw-r--.1androidandroid165362月821:36epl-v10.html
drwxrwxr-x.46androidandroid40962月1703:06features
-rw-rw-r--.1androidandroid90222月821:54icon.xpm
-rwxr-xr-x.1androidandroid2661682月821:54libcairo-swt.so
-rw-rw-r--.1androidandroid89512月821:36notice.html
drwxrwxr-x.5androidandroid40962月1703:05p2
drwxrwxr-x.10androidandroid368642月1703:06plugins
drwxrwxr-x.2androidandroid40962月1703:06readme
[android@localhosteclipse]$./eclipse
启动eclipse之后,eclipse会自动创建并寻找workspace文件夹,可以直接点击ok按钮即可。eclipse的启动过程如下图所示:
eclipse也可以在gnome桌面下直接双击eclipse可执行文件启动。
(3)安装android-sdk
[android@localhostBaseEnv]$tar-zxfandroid-sdk_r18-linux.tgz
[android@localhostBaseEnv]$ls
ADT-18.0.0.zip
android-sdk-linux
android-sdk_r18-linux.tgz
Android开发环境搭建(Linux篇).doc
eclipse
eclipse-cpp-indigo-SR2-incubation-linux-gtk.tar.gz
Linux环境搭建.doc
Linux下Android开发环境搭建.doc
[android@localhostBaseEnv]$cdandroid-sdk-linux/
[android@localhostandroid-sdk-linux]$ls
add-onsplatformsSDKReadme.txttools
[android@localhostandroid-sdk-linux]$cdtools/
[android@localhosttools]$ll
总用量6772
-rw-rw----.1androidandroid3233月3023:20adb_has_moved.txt
-rwxrwx---.1androidandroid34913月3023:19android
drwxrwx---.2androidandroid40963月3023:19ant
-rwxrwx---.1androidandroid19773月3023:19apkbuilder
drwxrwx---.3androidandroid40963月3023:19apps
-rwxrwx---.1androidandroid31163月3023:19ddms
-rwxrwx---.1androidandroid467243月3023:19dmtracedump
-rwxrwx---.1androidandroid19403月3023:19draw9patch
-rwxrwx---.1androidandroid248283月3023:19emulator
-rwxrwx---.1androidandroid28141283月3023:19emulator-arm
-rwxrwx---.1androidandroid27654283月3023:19emulator-x86
-rwxrwx---.1androidandroid1368603月3023:19etc1tool
-rwxrwx---.1androidandroid32823月3023:19hierarchyviewer
-rwxrwx---.1androidandroid96803月3023:19hprof-conv
drwxrwx---.6androidandroid40963月3023:19lib
-rwxrwx---.1androidandroid20153月3023:19lint
-rwxrwx---.1androidandroid96763月3023:19mksdcard
-rwxrwx---.1androidandroid31693月3023:19monkeyrunner
-rw-rw----.1androidandroid3795873月3023:20NOTICE.txt
drwxrwx---.7androidandroid40963月3023:19proguard
-rw-rw----.1androidandroid663月3023:19source.properties
-rwxrwx---.1androidandroid6138563月3023:19sqlite3
drwxrwx---.2androidandroid40963月3023:19support
-rwxrwx---.1androidandroid30443月3023:19traceview
-rwxrwx---.1androidandroid467843月3023:19zipalign
[android@localhosttools]$./androidupdatesdk
此处即打开了android模拟器的升级更新界面,如下图所示:
接下来的操作主要是对该模拟器中的相关包进行下载升级,需要的时间可能会很长(本人在进行升级时基本上会在晚上保持开机,因为Android系统之间得不兼容性。当然,您如果只是针对某一个Android系统版本,那会快很多。不过在以后也可以追加下载安装的。):
您可以选择Aceeptall:
点击Install按钮之后,您会跳转到下面的界面中,其中,在该对话框的最下面,您会看到当前包的下载速度与进度:
AndroidSDKManager有时候也会弹出下面的log对话框,这里面可以看到更加详细的信息(您可以关闭该对话框。如果您下一次确实需要看,您可以点击后色按钮后面的那个按钮,管理器会打开日志对话框):
在android-sdk安装成功之后,在该目录下,AndroidSDKManager会创建platform-tools文件夹,该文件夹中包含了您已定会用到的adb等android命令。
下载过程中,SDKMenager会弹出如下图的站点认证信息,可忽略该认证:
在下载安装完成后,安卓SDK管理器会弹出下面的对话框:
此时,您可以勾选标注为Notinstalled的相关包,点击Install*package可以安装您选择的没有安装的相关包,但此时安装的包大都需要您给出站点认证信息。相关信息截图如下:
至此,AndroidSDKManager安装完毕。
(4)安装ADT插件
首先,您要启动eclipse;
在IDE中点击Help->InstallNewSoftware...打开eclipse的Install对话框,如下图所示:
点击Add...按钮,打开AddRepository对话框:
在这一步周中,您可一在Location输入框中填入您下载ADT的URL。但此时,为了提高安装速度,可以先将ADT下载到本地,然后点击Archive...按钮:
这时,需要选择您刚才下载的ADT(记得,一定不要解压):
在这里,直接点击ok就可以了:
勾选Name中的DeveloperTools,直接点击Next,进行安装:
这时,就需要接受协议条款了,接下来直接点击Finish按钮:
在安装界面,您可以点击Details>>按钮查看当前的详细信息,此时在Eclipse的IDE界面的右下角也会给出进度提示:
插件安装过程中,可能会弹出来下面的警告信息,看完消息之后,您会和我一样点击确定按钮的:
安装完成后,Eclipse会让您选择是否重启Eclipse来应用您刚刚给IDE带来的新变化,这就因时而异了:
重启进入Eclipse之后,一般情况下,会弹出WelcometoAndroidDevelopment的对话框:
如果没有弹出该对话框,可以在Window->Perferences中的Android进行必要的设置,
该设置项位于SDKLocation下。
这里需要设置的是TargetLocation,您可一点击Browse...来浏览选择您之前安装的Android-sdk-linux的路径地址:
点击确定即可:
接下来,就是简单的Next:
接下来需要选择可安装的包,一般点击AcceptAll:
这一过程安装完成之后,可以通过Eclipse中的Window->AVDManager打开AndroidVirtualDeviceManager。也可一通过tools下的androidbash文件打开,不过可能稍微有一点困难,应该是不建议的打开方式。
设置创维M6的平板驱动
(请允许这么称呼,只是因为类似与Windows下的驱动效果,如此设置后,既可以打开创维M6的adb使用)
1、使用lsusb命令查看系统的USB设备:
[android@bogon~]$lsusb
Bus002Device005:ID0bb4:0c02HighTechComputerCorp.Dream/ADP1/G1Phone(Debug)
Bus002Device003:ID093a:2510PixartImaging,Inc.OpticalMouse
Bus002Device002:ID8087:0020IntelCorp.IntegratedRateMatchingHub
Bus002Device001:ID1d6b:0002LinuxFoundation2.0roothub
Bus001Device002:ID8087:0020IntelCorp.IntegratedRateMatchingHub
Bus001Device001:ID1d6b:0002LinuxFoundation2.0roothub
[android@bogon~]$
由此可以看出,进入Debug模式下的0bb4是创维M6的ID。
2、切换之android-sdk-linux的tools目录下,更新adb:
[android@bogontools]$./androidupdateadb
adbhasbeenupdated.Youmustrestartadbwiththefollowingcommands
adbkill-server
adbstart-server
[android@bogontools]$
3、尝试查看Android设备:
[android@bogonplatform-tools]$./adbdevices
*daemonnotrunning.startingitnowonport5037*
*daemonstartedsuccessfully*
Listofdevicesattached
????????????nopermissions
[android@bogonplatform-tools]$
可以看出,该命令执行失败,返回的结果,本人不知。
4、加入创维M6的ID到adb_usb.ini文件下(必须拥有root权限,并且该文件存在于隐藏的.android文件夹下):
[android@bogon~]$suroot
密码:
[root@bogonandroid]#ls-al
总用量200
drwx------.34androidandroid40964月1309:10.
drwxr-xr-x.5rootroot40964月1308:57..
drwx------.3androidandroid40964月1309:01.adobe
drwxrwxr-x.3androidandroid40964月1309:18.android
drwxrwxr-x.4androidandroid40964月1309:13BaseEnv
-rw-r--r--.1androidandroid186月222010.bash_logout
-rw-r--r--.1androidandroid1766月222010.bash_profile
-rw-r--r--.1androidandroid1246月222010.bashrc
drwxr-xr-x.3androidandroid40964月1308:58.cache
drwxr-xr-x.6androidandroid40964月1309:13.config
drwx------.3androidandroid40964月1308:58.dbus
-rw-r--r--.1androidandroid5001月242007.emacs
-rw-------.1androidandroid164月1308:58.esd_auth
drwx------.4androidandroid40964月1308:59.gconf
drwx------.2androidandroid40964月1309:09.gconfd
drwxr-xr-x.7androidandroid40964月1309:07.gnome2
drwx------.2androidandroid40964月1308:58.gnome2_private
drwxrwxr-x.3androidandroid40964月1308:58.gnote
drwx------.2androidandroid40964月1308:58.gnupg
drwxrwxr-x.2androidandroid40964月1308:58.gstreamer-0.10
-rw-rw-r--.1androidandroid2004月1308:58.gtk-bookmarks
drwx------.2androidandroid40964月1308:58.gvfs
-rw-------.1androidandroid3104月1308:58.ICEauthority
-rw-r--r--.1androidandroid7944月1308:58.imsettings.log
drwx------.3androidandroid40964月1309:09.kde
-rw-r--r--.1androidandroid1216月292010.kshrc
drwxr-xr-x.3androidandroid40964月1308:58.local
drwx------.3androidandroid40964月1309:01.macromedia
-rw-r--r--.1androidandroid1246月252010.mkshrc
drwxr-xr-x.5androidandroid40964月1308:58.mozilla
drwxr-xr-x.2androidandroid40964月1308:58.nautilus
drwx------.2androidandroid40964月1308:58.pulse
-rw-------.1androidandroid2564月1308:58.pulse-cookie
-rw-------.1androidandroid2184月1309:07.recently-used.xbel
drwxrwxr-x.3androidandroid40964月1308:58.redhat
drwx------.2androidandroid40964月1308:58.ssh
drwx------.3androidandroid40964月1309:10.thumbnails
drwxrwxr-x.3androidandroid40964月1309:10workspace
-rw-------.1androidandroid504月1308:57.xauthoxIGCv
-rw-------.1androidandroid44014月1309:26.xsession-errors
-rw-r--r--.1androidandroid65812月92009.zshrc
drwxr-xr-x.2androidandroid40964月1308:58公共的
drwxr-xr-x.2androidandroid40964月1308:58模板
drwxr-xr-x.2androidandroid40964月1308:58视频
drwxr-xr-x.2androidandroid40964月1308:58图片
drwxr-xr-x.2androidandroid40964月1308:58文档
drwxr-xr-x.2androidandroid40964月1309:13下载
drwxr-xr-x.2androidandroid40964月1308:58音乐
drwxr-xr-x.2androidandroid40964月1308:58桌面
[root@bogonandroid]#cd.android/
[root@bogon.android]#ls
adb_usb.iniavd
[root@bogon.android]#vimadb_usb.ini
[root@bogon.android]#lsusb
Bus002Device008:ID0bb4:0c02HighTechComputerCorp.Dream/ADP1/G1Phone(Debug)
Bus002Device003:ID093a:2510PixartImaging,Inc.OpticalMouse
Bus002Device002:ID8087:0020IntelCorp.IntegratedRateMatchingHub
Bus002Device001:ID1d6b:0002LinuxFoundation2.0roothub
Bus001Device002:ID8087:0020IntelCorp.IntegratedRateMatchingHub
Bus001Device001:ID1d6b:0002LinuxFoundation2.0roothub
[root@bogon.android]#gvimadb_usb.ini
#ANDROID3RDPARTYUSBVENDORIDLIST–DONOTEDIT.
#USE'androidupdateadb'TOGENERATE
#1USBVENDORIDPERLINE.'
0x0bb4#该段的前面的内容为该文件原来保存的内容,只需在最后添加创维M6的ID即可。
5、以root权限创建文件/etc/udev/rules.d/im-android.rules文件,并在其中添加下面红色加粗的文字,其中的含义,您可以猜得懂。记得给该文件赋予可读可执行权限。
[root@bogon.android]#cd..
[root@bogonandroid]#cd..
[root@bogonhome]#gvim/etc/udev/rules.d/imx-android.rules
SUBSYSTEM==usb,SYSFS{idVendor}==0bb4,MODE=0666
[root@bogonhome]#gvim/etc/bash.bashrc
[root@bogonhome]#exit
exit
[android@bogon~]$cdBase\Env/
[android@bogonBaseEnv]$ls
ADT-18.0.0.zipeclipse
android-sdk-linuxeclipse-cpp-indigo-SR2-incubation-linux-gtk.tar.gz
android-sdk_r18-linux.tgz
[android@bogonBaseEnv]$cdandroid-sdk-linux/
[android@bogonandroid-sdk-linux]$ls
add-onsdocsplatformsplatform-toolsSDKReadme.txttemptools
[android@bogonandroid-sdk-linux]$cdplatform-tools/
[android@bogonplatform-tools]$./adbdevices
Listofdevicesattached
????????????nopermissions
[android@bogonplatform-tools]$./adbkill-server
[android@bogonplatform-tools]$./adbstart-server
*daemonnotrunning.startingitnowonport5037*
*daemonstartedsuccessfully*
[android@bogonplatform-tools]$./adbdevices
Listofdevicesattached
????????????nopermissions
[android@bogonplatform-tools]$cd/etc/udev/rules.d
[android@bogonrules.d]$ll
总用量76
-rw-r--r--.1rootroot66276月24201040-hplip.rules
-rw-r--r--.1rootroot2268月18201051-dlm.rules
-rw-r--r--.1rootroot4956月24201056-hpmud_support.rules
-rw-r--r--.1rootroot16528月26201060-fprint-autosuspend.rules
-rw-r--r--.1rootroot10606月29201060-pcmcia.rules
-rw-r--r--.1rootroot4528月13201060-raw.rules
-rw-r--r--.1rootroot2927月17201070-cups-libusb.rules
-rw-r--r--.1rootroot7882月2102:4170-persistent-cd.rules
-rw-r--r--.1rootroot4602月2101:4970-persistent-net.rules
-rw-r--r--.1rootroot19141月13201085-pcscd_ccid.rules
-rw-r--r--.1rootroot3205月15200990-alsa.rules
-rw-r--r--.1rootroot837月28201090-hal.rules
-rw-r--r--.1rootroot3598月18201090-rdma.rules
-rw-r--r--.1rootroot534月19201091-drm-modeset.rules
-rw-r--r--.1rootroot24866月30201097-bluetooth-serial.rules
-rw-r--r--.1rootroot2928月30201098-kexec.rules
-rw-r--r--.1rootroot544月9201099-fuse.rules
-rw-r--r--.1rootroot534月1309:39imx-android.rules
[android@bogonrules.d]$suroot
密码:
[root@bogonrules.d]#chmod+rximx-android.rules
[root@bogonrules.d]#ll
总用量76
-rw-r--r--.1rootroot66276月24201040-hplip.rules
-rw-r--r--.1rootroot2268月18201051-dlm.rules
-rw-r--r--.1rootroot4956月24201056-hpmud_support.rules
-rw-r--r--.1rootroot16528月26201060-fprint-autosuspend.rules
-rw-r--r--.1rootroot10606月29201060-pcmcia.rules
-rw-r--r--.1rootroot4528月13201060-raw.rules
-rw-r--r--.1rootroot2927月17201070-cups-libusb.rules
-rw-r--r--.1rootroot7882月2102:4170-persistent-cd.rules
-rw-r--r--.1rootroot4602月2101:4970-persistent-net.rules
-rw-r--r--.1rootroot19141月13201085-pcscd_ccid.rules
-rw-r--r--.1rootroot3205月15200990-alsa.rules
-rw-r--r--.1rootroot837月28201090-hal.rules
-rw-r--r--.1rootroot3598月18201090-rdma.rules
-rw-r--r--.1rootroot534月19201091-drm-modeset.rules
-rw-r--r--.1rootroot24866月30201097-bluetooth-serial.rules
-rw-r--r--.1rootroot2928月30201098-kexec.rules
-rw-r--r--.1rootroot544月9201099-fuse.rules
-rwxr-xr-x.1rootroot534月1309:39imx-android.rules
[root@bogonrules.d]#
6、启动/etc/init.d/udev-post服务:
[root@bogonrules.d]#/etc/init.d/udevrestart
bash:/etc/init.d/udev:没有那个文件或目录
[root@bogonrules.d]#cd/etc/init.d/
[root@bogoninit.d]#ls|grepudev
udev-post
[root@bogoninit.d]#/etc/init.d/udev-postrestart
用法:/etc/init.d/udev-post{start|stop|reload}
[root@bogoninit.d]#/etc/init.d/udev-postreload
重新激发失败的udev事件[确定]
[root@bogoninit.d]#/etc/init.d/udev-poststart
重新激发失败的udev事件[确定]
[root@bogoninit.d]#cd/home/android/Base\Env/android-sdk-linux/platform-tools/
[root@bogonplatform-tools]#./adbkill-server
[root@bogonplatform-tools]#./adbdevices
*daemonnotrunning.startingitnowonport5037*
*daemonstartedsuccessfully*
Listofdevicesattached
0123456789ABCDEFdevice
[root@bogonplatform-tools]#
[root@bogonplatform-tools]#./adbshell
#pwd
/
#ls
config
cache
udisk
flash
sdcard
acct
mnt
vendor
d
etc
ueventd.rk29board.rc
ueventd.rc
ueventd.goldfish.rc
system
sys
sbin
proc
init_battery.sh
init.rk29board.rc
init.rc
init.goldfish.rc
init
default.prop
data
root
dev
#exit
[root@bogonplatform-tools]#
7、为了能够向其他的bash命令一样运行adb,即不许要在前面添加./,您需要修改相应的环境变量配置文件,您可以如下进行您的操作:
[root@bogonplatform-tools]#vim/etc/profile
exportAndroid_HOME=/home/android/Base\Env/android-sdk-linux
exportPATH=$PATH:$Android_HOME/platform-tools
[root@bogonplatform-tools]#source/etc/profile
[root@bogonplatform-tools]#exit
[android@bogon~]$
[android@bogon~]$echo$PATH
/usr/lib/qt-3.3/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/android/bin
为了让您设置的环境变量剩下,可以对该文件source一下,如下:
[android@bogon~]$source/etc/profile
[android@bogon~]$echo$PATH
/usr/lib/qt-3.3/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/android/bin:/home/android/BaseEnv/android-sdk-linux/platform-tools
[android@bogon~]$adbdevices
Listofdevicesattached
0123456789ABCDEFdevice
[android@bogon~]$adbshell
#pwd
/
#./data/grip/ids
1.wlan0
(nodescriptionavailable)
2.any
(Pseudo-devicethatcapturesonallinterfaces)
3.lo
(nodescriptionavailable)
inputainterface:(1-3)1
dev:wlan0
----ethernetprotocol(phydicallayer)-----
MACsourceAddress:
78:d6:f0:25:af:a9
MACdestinationAddress:
00:26:9e:6f:cc:e3
protocol:0806
thisisaARPprotocol
------ARPProtocol-------
----ethernetprotocol(phydicallayer)-----
MACsourceAddress:
00:26:9e:6f:cc:e3
MACdestinationAddress:
78:d6:f0:25:af:a9
protocol:0806
thisisaARPprotocol
------ARPProtocol-------
^C
#[android@bogon~]$
[android@bogon~]$