本章需掌握

1.连接真机的过程。

2.dx指令的作用

3.adb是什么?

4.adb有什么用(有什么好处)?

5.adb的一些常用命令

1.连接真机的过程.

  需要:一部Android机.usb连接线,一台电脑

  1.第一步 手机通过usb线连接了电脑之后电脑任务栏的系统托盘中会需要安装手机在电脑中的驱动设备

在很多博文中都提到了,adb是一个调试桥,可供ecplise进行调试的工具,其实也就是debug工具,更多的我们可以理解为adb是Android中提供给我们用于操作Android系统相关信息的一个调试工具.

有些手机卫士之类的软件会自动帮我们安装驱动,耐心等待驱动安装,失败的话拔掉usb重试

如果驱动安装成功

  任务栏系统托盘中会有图标提示

  

  我们也可以在计算机管理中看到

  

  

  进入计算机管理界面中的设备管理器看到我们的设备驱动安装成功之后就表示我们的手机连接电脑成功了,此时我们在模拟器中做的也可以在真机中做了

2.dx.bat指令的作用

  我们学习Android,知道使用ecplise工具可以做到使得我们的Android项目生成一个apk(Android Package的缩写,即Android安装包)为后缀的文件,这是用来安装在Android系统中软件安装包,使得我们的Android项目可以在Android系统之中运行,那么ecplise工具又是怎么生成这个apk安装包的呢?

  Android sdk中提供了一个名为dx.bat的文件文件可以从sdk中的build-tools目录中寻找

  

  

  

   

  ecplise通过jvm将我们的R.java文件之类的资源管理文件,以及src目录下的.java文件编译成.class结尾的文件

  然后通过dx.bat将所有的文件编译成.dex结尾的能被Dalvik能够解释的文件,然后通过一个打包的过程把.dex文件以及我们的资源文件打包

  生成了.apk结尾的文件,这就是我们的.apk文件生成的过程。

3.adb是什么?

  adb是(Android Debug Bridge)的简称,是Android sdk中的一个工具,用这个工具可以直接管理Android模拟器和Android设备,起到调试桥的作用.

4.adb有什么用?

主要功能有

  1.adb可用于管理多个设备端口

  2.adb可用于模拟手机与pc端的文件上传下载

  3.可用于在手机端运行shell命令

  4.可用于Android设备的升级

5.adb中的一些常用命令

  1.如何执行adb指令

    1)找到adb指令所在路径

    E:\学习\android\adt-bundle-windows-x86_64-20140702\sdk\platform-tools

    这是博主sdk中adb.exe所在的路径

    

  2)进入doc窗口执行adb指令

  

  

  注意:我们adb的指令如果没有配置Android_Home的环境变量的话,需要寻找到adb.exe所在的路径来执行adb命令  

  2.下面我们就可以学习一些adb的命令了

    1)adb devices:显示当前连接上电脑的Android设备

     

   2)adb install <apk路径>安装apk文件到手机设备

    注意,apk路径可以是绝对路径不需要把apk放置在sdk所在的目录

    

    安装成功之后,手机上会显示apk安装后的软件

    

    3)adb uninstall <软件包名> 从手机端中卸载软件

    

    这里要注意的是我们使用卸载命令的时候,软件包名是通过项目中的包名来确定的

    

      可以看到该项目中,包名是com.example.androidrelative 那么卸载命令就是 adb uninstall com.example.android.realative ,如果卸载其他软件,

      我们就需要加入对应包名即可

    4)adb push <本地路径(电脑路径)> <远程路径(手机路径)>

    此时我的E盘testone目录下中有文件名为test.txt

    

    我需要将其复制到android系统中的目录data/backup目录下

    

    执行adb push 命令之前先执行adb remount命令,这样可以让Android系统进入可以读写的状态

    

    ,然后执行adb push 命令

    

    整段命令是 adb push E:\testone\test.txt data/backup

    这里E:\testone\test.txt 指的是PC端路径

    data/backup指的是移动端路径

    如果不按照格式写的话会报如下错误

    

    这里面我们把移动端路径写错了,然后就报错了

    复制成功之后我们到ecplise中的ddms中查看

    

    5.adb pull <手机路径> <pc端路径>

    顾名思义,这是把手机端的文件复制到pc端的一种方法

    

    整段命令的结构是 adb pull data/backup/test.txt E:\testone\myfile.txt ,最好也是按照格式来

    这里我们给之前名字为test.txt的文件改名为myfile.txt,说明在执行此命令的时候是可以由我们指定复制之后的名称的

    我们看看计算机中的路径是否添加了一个文件,这里我们在之前执行adb push命令的时候只有test.txt,现在多了一个    

    myfile.txt文件,复制成功

    

    6.adb shell 进入shell模式

    在这种模式下我们可以理解为,现在我们可以执行一些命令,它们可以对我们的移动端进行操作,

    直接的理解就是我们现在已经进入了手机的操作系统,现在是由我们输入对应的指令来对手机

    可以进行譬如关机,开机,打开指定软件等指令

    

    这里我们要涉及到手机权限的问题,手机用户用的多的人们可以知道,经常会有一个root的说法,意思是获得

    对手机的最高权限,这样意味着我们可以对手机进行一些只有最高权限才能做得操作,譬如删除系统自带的一些

    软件,这些都是家常便饭

    那么在shell模式下体现没有获得最高权限的体现是如何呢?

    

    从上面的图可以看到,之前的#变成了$符号,这代表着手机并没有root获取最高的权限

    这个命令中 adb -s CEWS5LEEHMHYNZGY shell 指的是进入指定手机的shell模式

    CEWS5LEEHMHYNZGY 通过adb devices获取设备的名称

    

    exit命令退出shell模式

    

    在shell模式下简单的开启和关闭WiFi命令

    开启WiFi命令:svn wifi enable

    关闭WiFi命令:svn wifi disable

    大家可以自己在最高权限下试一下,手机最高权限怎么获取,可以在手机中下载对应的root工具就行了

    7.sqlite3命令进入Android数据库

    sqlite3 数据库路径 进入数据库中

    

    这里面就是我们的数据库模式了,Android中使用的是sqlite数据库,该款数据库也遵循sql92标准,所以,大家可以放心的尝试,增删改查

    建立一张表mytest

    

    添加一条测试数据

    

    查询数据

    

    修改数据

    

    删除数据

    

    删除表

    

    .quit命令退出sqlite模式

    

    以上是sqlite数据中一些基本的操作,这里有个网址,希望深入了解sqlite数据库的朋友可以看一下

    http://www.runoob.com/sqlite/sqlite-data-types.html

    以上,就是我们本章基本讲解的一些内容了,希望对大家有所帮助

  

    

    

    

  

    

  

  

  

我的Android第四章的更多相关文章

  1. 我的Android第四章:Android的adb命令使用以及SQlite数据库运用

    adb是什么?:adb的全称为Android Debug Bridge,就是起到调试桥的作用.      adb有什么用?:借助adb工具,我们可以管理设备或手机模拟器的状态.还可以进行很多手机操作, ...

  2. [Learn Android Studio 汉化教程]第四章 : Refactoring Code

    [Learn Android Studio 汉化教程]第四章 : Refactoring Code 第四章 Refactoring Code    重构代码 在Android Studio中开发,解决 ...

  3. 《Android群英传》读书笔记 (2) 第三章 控件架构与自定义控件详解 + 第四章 ListView使用技巧 + 第五章 Scroll分析

    第三章 Android控件架构与自定义控件详解 1.Android控件架构下图是UI界面架构图,每个Activity都有一个Window对象,通常是由PhoneWindow类来实现的.PhoneWin ...

  4. Android系统移植与驱动开发--第四章

    第四章 源代码的下载和编译 一个android内核相当于4G,而一个Linux内个只有几百M,Linux内核相对于android内核来说实在是小巫见大巫.了解android源代码不一定要详细了解,只去 ...

  5. Android艺术开发探索第四章——View的工作原理(下)

    Android艺术开发探索第四章--View的工作原理(下) 我们上篇BB了这么多,这篇就多多少少要来点实战了,上篇主席叫我多点自己的理解,那我就多点真诚,少点套路了,老司机,开车吧! 我们这一篇就扯 ...

  6. Android群英传笔记——第四章:ListView使用技巧

    Android群英传笔记--第四章:ListView使用技巧 最近也是比较迷茫,但是有一点点还是要坚持的,就是学习了,最近离职了,今天也是继续温习第四章ListView,也拖了其实也挺久的了,list ...

  7. 第四章Android移植环境搭建

    第四章Android移植环境搭建 这一章主要学习如何搭建 Android 移植的环境.因为 Android 底层是基于 Linux 内核的,所以本章从交叉编译环境等嵌入式开发环境的搭建开始,介绍了 B ...

  8. 第四章:重构代码[学习Android Studio汉化教程]

    第四章 Refactoring Code The solutions you develop in Android Studio will not always follow a straight p ...

  9. Android深度探索-卷1第四章心得体会

    这一章的和三章的git用法有联系,so,吧上一章的git基本用法搞好了再来,具体的方法就是看书上网查,这里就不做详细步骤介绍了.这章就有点意思了,是源码的下载和编译,有能看的,能自己鼓捣的,本章介绍的 ...

随机推荐

  1. 网页语言有html,php.jsp,无论什么语言浏览器总是能正常显示,这个解析工作是浏览器完成的吗?

    不是,浏览器最基本的语言是html也就是说浏览器只看得懂html.css.js等其他的服务器端动态脚本,比如你说的php.jsp等,解析工作是在服务器完成的!打个比方,你在电脑显示屏上看到的一切东西, ...

  2. Python先合并再排序

    前几天遇到的美团笔试题 题目:大概要求输入两组数字,对这两组数值排序然后输出结果 思路:输入两组数,合并两组数,排序 list1 = raw_input("input some number ...

  3. dragdrop 修改版

    <!DOCTYPE html> <html lang="en"> <head> <meta name="keywords&quo ...

  4. iOS duplicate symbol 变量 in 类名 报错

    该错误信息是我在一个.h文件里申明了公共变量,然后在其他类里重复使用. Build Settings ->No Common Blocks默认为YES,编译器就报错了,需要修改Build Set ...

  5. equals == 比较

    public class Equals{ public static void main(String[] args){ Interger n1=new Interger(47); Interger ...

  6. sed处理url编码解码=== web日志的url处理

    URL 编码/解码方法(linux  shell实现),方法如下: 1.编码的两种方法: admin@~ 11:14:29>echo '手机' | tr -d '\n' | xxd -plain ...

  7. ios监听键盘弹出 频幕位置改变

  8. 用Netty开发中间件:高并发性能优化

    用Netty开发中间件:高并发性能优化 最近在写一个后台中间件的原型,主要是做消息的分发和透传.因为要用Java实现,所以网络通信框架的第一选择当然就是Netty了,使用的是Netty 4版本.Net ...

  9. querystring 解析url 查询字符串

    对前端同学来说,经常要碰到一种比较麻烦的情况,那就是url查询字符串的解析问题.说起来也不难,就是比较麻烦. 具体来处理这种情况的时候,相信有一部分同学就是针对具体项目中的需要的字符去正则匹配一下,业 ...

  10. Leetcode: Encode String with Shortest Length && G面经

    Given a non-empty string, encode the string such that its encoded length is the shortest. The encodi ...