在前面的两篇文章中,讲述了编译android源码和内核源码,此篇文章建立在之前的基础上,不清楚的请先转战:
---------------------------------------------------------------------------------------------
在使用了下面的命令启动了模拟器之后:
export PATH=$PATH:/usr/local/Android/Android2.3.7/out/host/linux-x86/bin
export ANDROID_PRODUCT_OUT=/usr/local/Android/Android_2.3.7/out/target/product/generic
emulator -kernel ./kernel/private_guo/kernel/arch/arm/boot/zImage
我们怎么样使用adb来连接到我们的模拟器上面呢?其实上面的命令可以稍微修改一下:
emulator -kernel ./kernel/private_guo/kernel/arch/arm/boot/zImage &
这样,&是为了让模拟器在后台运行,以便我们可以在同一个终端,来使用adb命令来连接模拟器。
一般来说,sdk中会具有adb命令,其实,我们编译好的源码已经提供了该命令在:Android/out/host/linux-x86/bin中,我们在上面的命令中,在当前的shell中设置了该位置的环境变量,所以可以直接使用。
1.查看连接的设置和模拟器,5554就是我现在在启动的模拟器
2.然后可以进行连接该模拟器
3.连接了之后可以干很多的事情,比如查看内核版本。
因为我启动的时候,使用的是我自己编译的内核源码,编译的时候,使用的arm-eabi-gcc是4.4.3版本的。这个具体参见内核编译
4.也可以查看cpu体系架构。在编译内核的时候,如果cpu体系架构版本是arm v5的,则使用goldfish_defconfig文件,如果是使用arm v7版本的,则使用goldfish_armv7_defconfig文件。这个也可以参见内核编译。
对于上面的查看内核版本和cup体系架构版本,都是在/proc文件夹下面的,当然了,还能干的事情有很多,比如删除密码锁等等。
5.删除锁屏密码,我再模拟器上面设置了密码锁,然后进入的/data/system的目录下:
可以看到gesture.key就是密码锁文件,只要把这个文件删除掉,密码锁也就无效了,如果你是连接的真机的话,那么设备必须要root才可以。
这样就可以了,所以,感觉android的安全性上面还是要差一些的。当我们连接到设备shell上,并取得了root权限,那么我们就是无所不能的上帝了!
退出当前设备连接的话,直接在根目录输入:exit就可以了。这样就能够回到ubuntu了。