adb是什么?:adb的全称为Android Debug Bridge,就是起到调试桥的作用。

     adb有什么用?:借助adb工具,我们可以管理设备或手机模拟器的状态。还可以进行很多手机操作,如安装软件、系统升级、运行shell命令等等。

发布Android程序

  安装程序指令

   安装应用程序的指令:adb install <.apk存放路径>

卸载应用程序的指令:adb uninstall <Android程序的包名>

    注:在该卸载操作时不是指定程序名,而是包名,可以打开文件查询程序的包名

  查看那行连接设备 :adb devices

  进入模拟器的shell模式: adb shell

获取管理员权限:adb root

用adb指令实现文件上传和读写操作

假如你要将Windows下E根目录下的test.xls文件拷贝到机器(手机或者平板)的/system/目录下;可以使用命令如下:

 从电脑上发送文件到设备

  adb push <本地路径> <远程路径>

adb push E:\test.xls system/

你会发现执行上传命令操作时它会提示如下信息

这时候你要输入命令adb remount来操作 ,意思是将设备改为可读可写;

显示remount succeeded就代表命令执行成功;

注:但是当你有时执行remount succeeded命令操作时则会报如下信息:报你没有操作权限,这时候你着需要获取该系统下最高权限级别了

你则需要执行 adb shell进来操作系统获取最高权限

这时候你则需要该手机系统下新建一个文件夹来存放一个写入的文件

然后在执行文件读写操作

这样就可以了,只是这一步需要繁琐先,不过主要给系统生成一个文件夹即可,因为有些设备系统中文件不支持读写操作

如果你连接的支持读写操作那恭喜你将执行下面操作着会成功了

输入命令adb remount ,意思是将设备改为可读可写;

显示remount succeeded就代表命令执行成功;

然后查询你的设备目录

 从设备上下载文件到电脑中

  adb pull <远程路径> <本地路径> 

找到一个设备文件build.prop文件

执行你的adb pull命令

查看E:目录

使用adb实现刷机操作

adb shell mount -a
adb push recovery-RAv1.0G.img /system/recovery.img
adb push recovery-RAv1.0G.img /sdcard/recovery-RAv1.0G.img
adb shell flash_image recovery /sdcard/recovery-RAv1.0G.img reboot

  重新挂载文件系统 :adb remount  

  重启手机: adb reboot 

使用adb指令操作数据库

1.首先获取你设备中最高操作权限,但是不获取最高权限也是可以操作数据库的

执行adb shell操作进入到你Android操作系统中

执行以下命令:sqlite3

可以通过输入<.help命令查询帮助>

查询sqlite下的数据文件

进入到控制台中,输入adb shell,进入到命令模式的环境中

       输入:cd /data/data/ :注意要有个空格

    选择你所在的数据库文件,比如我的com.android.dialer, 输入命令:cd com.android.dialer

4, 可以使用ls -l 命令查看当前目录中的文件

5,输入: cd databases 进入到数据库文件中

6, ls -l 显示你数据库中你建立的数据库

7, sqlite3 info.db 进入到你选择的数据库中
8, .tables :查看你建的表

9, select * from properties; 可以查看整个表的信息

如果想查看这些表的结构:通过.schema来查看

有关SQLite基本语法学习可以去到菜鸟教材中心进行学习 http://www.runoob.com/sqlite/sqlite-syntax.html

拷贝该数据库文件

我们可以拷贝该数据库文件来当作我们的数据库文件使用,这样该数据库文件就成为我们自己的数据库了,是不是很好玩呢?哈哈

1.拷贝

我们执行文件读写命令操作 adb pull <设备文件路径> <电脑文件路径>

查看F:目录下找到dialer.db

2.编辑自己的数据操作

直接执行进入该数据

3.创建数据库表

4.给表添加数据

如果想查看自己创建的表结果,那就使用.schema命令查看吧。

我的Android第四章:Android的adb命令使用以及SQlite数据库运用的更多相关文章

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

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

  2. Android源码浅析(四)——我在Android开发中常用到的adb命令,Linux命令,源码编译命令

    Android源码浅析(四)--我在Android开发中常用到的adb命令,Linux命令,源码编译命令 我自己平时开发的时候积累的一些命令,希望对你有所帮助 adb是什么?: adb的全称为Andr ...

  3. Android Studio(四):Android Studio集成Genymotion

    Android Studio相关博客: Android Studio(一):介绍.安装.配置 Android Studio(二):快捷键设置.插件安装 Android Studio(三):设置Andr ...

  4. 我的Android第四章

    本章需掌握 1.连接真机的过程. 2.dx指令的作用 3.adb是什么? 4.adb有什么用(有什么好处)? 5.adb的一些常用命令 1.连接真机的过程. 需要:一部Android机.usb连接线, ...

  5. 【ALearning】第四章 Android Layout组件布局(一)

    在本章中,我们将Android学习组件布局.在前面的章节,我们也开始使用LinearLayout布局.然后我们在布局文件更加具体的学习和理解,会. Android的界面是有布局和组件协同完毕的,布局好 ...

  6. 第四章 android 命名规范和编码规范

    书里面讲的比较常见,单个人也是有不同的观点: 因为android绝大部分使用java开发的,因此java相关规范适用于android: Google Style: 英文地址:http://google ...

  7. 【ALearning】第四章 Android Layout组件布局(二)

    前面我们分别介绍和学习了LinearLayout(线性布局).FrameLayout(单帧布局)和AbsoluteLayout(绝对布局).这次我们要进行RelativeLayout(相对布局)和Ta ...

  8. Android 使用存放在存assets文件夹下的SQLite数据库

    因为这次的项目需要自带数据,所以就就把数据都放到一个SQLite的数据库文件中了,之后把该文件放到了assets文件夹下面.一开始打算每次都从assets文件夹下面把该文件夹拷贝到手机的SD卡或者手机 ...

  9. Android学习四、Android中的Adapter

    一.Adapter的介绍 An Adapter object acts as a bridge between an AdapterView and the underlying data for t ...

随机推荐

  1. HTML5 input事件检测输入框变化

    之前一直用change事件来监听输入框内容是否发生变化,只有当输入框失去焦点时才会触发,没想到html5还有个input事件,只要输入框内容发生变化就会立即触发,既然有这么好的东西我们干嘛放着不用呢, ...

  2. 【iOS】关联属性存取数据

    有时候我们需要在现有的类存放一些额外的信息,通常的做法是继承一个子类,然后定义新增加的属性,然而如果我们为每个需要的类都添加一个类显得太麻烦了,objc提供了一个关联属性的特性,可以给一个对象关联一个 ...

  3. ASP.NET MVC ModelValidator小结

    当用户通过UI输入数据向程序交互时,都会出现一个潜在的错误,数据错误,要检查用户提交的数据是否正确,需要做数据验证,在ASP.NET MVC中,每当Action执行前都会对传入Action的Model ...

  4. 【C#】Excel舍入函数Round、RoundUp、RoundDown的C#版

    本人在C#中进行小数舍入的时候常常会怀念Excel中的Round.RoundUp.RoundDown这几个函数,原因就是后者“接地气”,比较符合俺小老百姓的舍入要求,啥“银行家舍入法”就让银行家用去吧 ...

  5. 15天玩转redis —— 第六篇 有序集合类型

    今天我们说一下Redis中最后一个数据类型 “有序集合类型”,回首之前学过的几个数据结构,不知道你会不会由衷感叹,开源的世界真好,写这 些代码的好心人真的要一生平安哈,不管我们想没想的到的东西,在这个 ...

  6. Guava并发:ListenableFuture与RateLimiter示例

    ListenableFuture顾名思义就是可以监听的Future,它是对java原生Future的扩展增强 RateLimiter类似于JDK的信号量Semphore,他用来限制对资源并发访问的线程 ...

  7. MVP 2015社区大讲堂之:在ASP.NET应用中执行后台任务

    昨天下午,在微软的MVP 2015社区大讲堂上给大家分享了一个题目:在ASP.NET应用中执行后台任务.这是一点都不高大上,并且还有点土气的技术分享.不过我相信很多人都遇到过这样的问题. 虽然是一个很 ...

  8. C# 操作鼠标移动到指定的屏幕位置方法

    /// <summary> /// 引用user32.dll动态链接库(windows api), /// 使用库中定义 API:SetCursorPos /// </summary ...

  9. jquery层级原则器(匹配前一个元素后的下一个元素,必须是挨着的)

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  10. ActionContext和ServletActionContext区别

    1. ActionContext 在Struts2开发中,除了将请求参数自动设置到Action的字段中,我们往往也需要在Action里直接获取请求(Request)或会话(Session)的一些信息, ...