adb 的相关操作及遇到的问题

 一. 电脑连接你的手机

1.打开手机的开发者模式 并  开启调试工具

2.用手机连接上  你的电脑

3.在eclipse 中的DDMS 中查看是否 连接到

如图所示:

这时会发现 多了一个连接 :说明你已经连接到你的手机了

二.通过电脑来操作你的手机 

  1.找到你安装SDK 的安装目录 并进入 adb.exe 所在的目录:

      比如我自己的: G:Androidadt-bundle-windows-x86_64-20140702sdkplatform-tools

      

  2.在 Windows 的 docs命令中 : 

    执行 进入 1.步骤中的目录下执行:   adb.devices

    如果出现如图所示:

    说明你已经连接上了你的手机了

   如图所示:

    

  3. 通过shell命令来操作你连接的手机

    执行 adb shell

    

  4.  执行数据库:

     1.到指定的数据库位置

     2.sqlite3   数据库名称

 获取权限

  当  操作 文件的 遇到  权限问题 必须 取得  必须的权限  :

    进入相关包的目录下,更改权限命令:

        chmod 777 文件名;

        777 : 代表所有的权限;

当执行 android 手机上的数据库时:报如下错误:

 error: only position independent executables (PIE) are supported.

 

 解决办法

   (中间 可能会遇到 权限的问题   就需要   获取  相关的权限 )

   把手机上该目录下的 settings.db 给 拷贝到另一个位置

   可以把拷贝过去的文件     push 到  自己电脑上   语法: adb push  要拷贝的文件地址   电脑目的地址  

   (目的:   在自己 的电脑上操作数据库了 )

   如图:(settings.db 拷贝到  手机的根目录下 并取 一个自己想要的 名字 )

    拷贝命令如下:

     cp 要拷贝的文件名  /拷贝到的位置/自己命名的名字     

    如图:

    

    

  然后就可以执行从手机上拷贝到电脑上的数据库了: 如图:

    运行:

    

  最后就可以随意的    玩耍你的数据库了 

    

  问题:(这是你的 SQLite3 的版本不一致 所导致的 )

SQLite header and source version mismatch
2014-08-15 11:46:33 9491ba7d738528f168657adb43a198238abde19e
2012-03-20 11:35:50 00bb9c9ce4f465e6ac321ced2a9d0062dc364669

解决办法:

  到网上去下载 sqlit3 和 libncurses.so   放到你的手机上:

  放置的目录:

    sqlit3 :/system/xbin 下

    libncurses.so: /system/lib 下

  

问题: 

Unable to chmod sdcard: Read-only file system

解决办法

1.ROOT你的手机
2.用adb shell登录后,用su root切换到root用户,切换后显示#号,表示切换成功
3.用mount命令重新加载文件系统:mount -o remount rw  /system

端口被占用的问题:

daemon not running. starting it now on port 5038 *
cannot bind 'tcp:5038'
ADB server didn't ACK
* failed to start daemon *

解决办法如图所示:

1.执行: adb nodaemon server             原来adb server 端口绑定失败   

2.netstat -ano | findstr "5037"   查询哪个占用了5037端口

3.在任务管理器中找到9600 这个程序杀掉它就行了  或者 执行命令taskkill /f /pid 9600

   

     

  

  

原文地址:https://www.cnblogs.com/liugch/p/6077631.html