其他可能在ubuntu linux下遇到adb调试问题.

症状是usb连接的Android设备的可用性,例如与日食.
你可以测试一下

adb usb

当你拿到时

error: insufficient permissions for device

你可能遇到像我这样的问题.
但是,我在互联网上发现了一些或多或少的次优解决方案

基本思路是以root身份启动adb.我发现的解决方案很麻烦.

一个建议是每个sudo启动adb.另一个建议是在/etc/init.d中设置启动脚本

我的解决方案是授予adb以root身份启动的权限.为此,请切换到root

sudo bash
chown root adb
chmod ug+s-w adb

安全狂热分子可能会提议

sudo chown root adb
sudo chmod ug+s-w adb

如果adb已经在运行,你需要杀死恶魔以root权限开始

adb kill-server

一切顺利

adb usb

应该回来

restarting in USB mode

如果没有,请尝试lsusb检查您的设备是否已连接

谷歌建议的处理ADB设备权限的方法是创建一个UDEV规则,该规则将设置适当的设备枚举权限.

按照http://developer.android.com/tools/device.html

If you’re developing on Ubuntu Linux,you need to add a udev rules
file that contains a USB configuration for each type of device you
want to use for development. In the rules file,each device
manufacturer is identified by a unique vendor ID,as specified by the
ATTR{idvendor} property. For a list of vendor IDs,see USB vendor IDs,
below. To set up device detection on Ubuntu Linux: Log in as root and
create this file: /etc/udev/rules.d/51-android.rules. Use this format
to add each vendor to the file: SUBSYstem==”usb”,
ATTR{idvendor}==”0bb4″,MODE=”0666″,GROUP=”plugdev”

In this example,the vendor ID is for HTC. The MODE assignment specifies read/write permissions,and GROUP defines which Unix group owns the device node. Note: The rule Syntax may vary slightly depending on your environment. Consult the udev documentation for your system as needed. For an overview of rule Syntax,see this guide to writing udev rules. Now execute: chmod a+r /etc/udev/rules.d/51-android.rules When plugged in over USB,can verify that your device is connected by executing adb devices from your SDK platform-tools/ directory. If connected,you’ll see the device name listed as a “device.”

如何在ubuntu下使用adb连接android设备的更多相关文章

  1. android – 来自adb的’grep’命令的问题

    当我用adb写的时候:我得到错误输出:但如果我将它拆分为两个操作符:它工作正常.如果唯一的方法是将它拆分为两个–首先进入adbshell,然后运行Inquire,有一种方法可以从c#中执行此操作吗?

  2. Android模拟器 – 离线到在线模式

    有没有办法将Android模拟器从离线模式带到在线模式而不关闭AVD?我尝试了adb的’kill-server’,’start-server’命令,但这似乎只是重新启动adb服务器,模拟器仍处于离线模式,’adbdevices’仍然显示’离线’状态.也有人可以解释模拟器的“离线”模式究竟是什么意思.在我的例子中–仿真器(独立),守护进程和ADB服务器–似乎都在运行.为什么模拟器状态仍处于脱机状态?

  3. Android Build Tools无论如何都只构建x86_64. APK通过adb安装,但在Play商店中显示不兼容

    所以这发生了.无论我在build.gradle上做什么,所有的APK都会以native_code=’x86_64’标志出来,所以当我将应用程序部署到商店时,结果是有15K不兼容的设备,只有19兼容.我首先想到,不知何故,安装NDK是原因,或者我修改后的构建脚本.但是当我通过GenerateSignedAPK向导时,它仍然会发生.分裂块也最初缺失,并没有帮助.最奇怪的是,当我通过控制台推送安装时,IT工作!

  4. android – 通过ADB更改设备语言

    我想通过亚行改变语言.我试试:但我得到错误:怎么了?我想在物理设备上执行此操作解决方法您的错误与adb无关.您只是不了解本地shell如何处理命令.您正在做的是在本地运行这些命令:您看到的错误消息来自本地shell(即系统上没有setprop可执行文件,启动和停止命令具有非可选参数.正确的命令是或者在最近的Android版本中:

  5. android – react-native:’adb’不被识别为内部或外部命令,可操作程序或批处理文件

    我是新的反应原生Android应用程序开发.请帮我解决这个问题.我无法运行我的第一个应用程序,因为adb’未被识别为内部或外部命令,可操作程序或批处理文件而出现错误.我检查了androidsdk->platform-tools->我可以在那里看到adb.exe.构建成功但在运行时出错.下面是我的cmd提示符我没有使用模拟器,使用自己的移动设备.应用程序在我的设备中启动,但我看到的只是一个白色的空白

  6. android – adb:错误:远程对象’/data/data/com.me.myproject’不存在

    1.添加了/.bash_profile的adb路径2.登录仿真器3.更改了app文件夹和父文件夹的权限4.仍然无法从外面获取东西.为什么?

  7. android – adb shell和adb推送特定的avd

    我有一个在eclipse中启动的模拟器,还有一个通过usb在我的计算机上连接的真实设备.所以在我的DDMS中,它显示了2个具有2个不同名称的设备如何指定将在哪个设备上执行ADB命令?解决方法如果只有一个设备和一个仿真器,则可以使用-d和-e选项将命令定向到实际设备和仿真器.设备:仿真器:或者,您可以使用-s将命令定向到特定模拟器/设备实例的选项:对于其他选项,请阅读docs.希望这会有所帮助.

  8. Tools-> Android->启用ADB服务的目的是什么?

    为了将IDEA和DDMS连接到同一个仿真器,我不得不禁用此功能.它有什么作用?这个行动有不利之处吗?

  9. Android中的Usb数据线通信

    我想用usb数据线从我的计算机上与我的android应用程序通信.我应该实施什么样的听众?我认为TCP连接将满足我的需求,但通过adb驱动程序与它连接似乎很难.如何使用数据线从Windows与Android通信?解决方法我找到了一篇关于这个主题的好帖子here.你基本上需要adb才能在Android设备和PC之间进行端口转发.举个例子:然后,您可以在Android设备和PC中使用标准套接字编程.

  10. Android Studio未与adb GLIBC通信…未找到错误

    Android工作室通常与adb通信.在将平台工具更新到版本23之后,androidstudio停止了与adb的通信.它显示消息:UnabletocreateDebugBridge:Unabletostartadbserver:Unabletodetectadbversion,adboutput:/data/programs/android-sdk/platform-tools/adb:/lib6

随机推荐

  1. crontab发送一个月份的电子邮件

    ubuntu14.04邮件服务器:Postfixroot收到来自crontab的十几封电子邮件.这些邮件包含PHP警告.>我已经解决了这些警告的原因.>我已修复每个cronjobs不发送电子邮件(输出发送到>/dev/null2>&1)>我删除了之前的所有电子邮件/var/mail/root/var/spool/mail/root但我仍然每小时收到十几封电子邮件.这些电子邮件来自cronjobs,

  2. 模拟两个ubuntu服务器计算机之间的慢速连接

    我想模拟以下场景:假设我有4台ubuntu服务器机器A,B,C和D.我想在机器A和机器C之间减少20%的网络带宽,在A和B之间减少10%.使用网络模拟/限制工具来做到这一点?

  3. ubuntu-12.04 – 如何在ubuntu 12.04中卸载从源安装的redis?

    我从源代码在Ubuntu12.04上安装了redis-server.但在某些时候它无法完全安装,最后一次makeinstallcmd失败.然后我刚刚通过apt包安装.现在我很困惑哪个安装正在运行哪个conf文件?实际上我想卸载/删除通过源安装的所有内容,只是想安装一个包.转到源代码树并尝试以下命令:如果这不起作用,您可以列出软件自行安装所需的步骤:

  4. ubuntu – “apt-get source”无法找到包但“apt-get install”和“apt-get cache”可以找到它

    我正在尝试下载软件包的源代码,但是当我运行时它无法找到.但是当我运行apt-cache搜索squid3时,它会找到它.它也适用于apt-getinstallsquid3.我使用的是Ubuntu11.04服务器,这是我的/etc/apt/sources.list我已经多次更新了.我尝试了很多不同的debs,并没有发现任何其他地方的错误.这里的问题是你的二进制包(deb)与你的源包(deb-src)不

  5. ubuntu – 有没有办法检测nginx何时完成正常关闭?

    &&touchrestarted),因为即使Nginx没有完成其关闭,touch命令也会立即执行.有没有好办法呢?这样的事情怎么样?因此,pgrep将查找任何Nginx进程,而while循环将让它坐在那里直到它们全部消失.你可以改变一些有用的东西,比如睡1;/etc/init.d/Nginx停止,以便它会休眠一秒钟,然后尝试使用init.d脚本停止Nginx.你也可以在某处放置一个计数器,这样你就可以在需要太长时间时发出轰击信号.

  6. ubuntu – 如何将所有外发电子邮件从postfix重定向到单个地址进行测试

    我正在为基于Web的应用程序设置测试服务器,该应用程序发送一些电子邮件通知.有时候测试是使用真实的客户数据进行的,因此我需要保证服务器在我们测试时无法向真实客户发送电子邮件.我想要的是配置postfix,以便它接收任何外发电子邮件并将其重定向到一个电子邮件地址,而不是传递到真正的目的地.我正在运行ubuntu服务器9.10.先感谢您设置本地用户以接收所有被困邮件:你需要在main.cf中添加:然后

  7. ubuntu – vagrant无法连接到虚拟框

    当我使用基本的Vagrantfile,只配置了两条线:我看到我的虚拟框打开,但是我的流氓日志多次显示此行直到超时:然后,超时后的一段时间,虚拟框框终于要求我登录,但是太久了!所以我用流氓/流氓记录.然后在我的物理机器上,如果我“流氓ssh”.没有事情发生,直到:怎么了?

  8. ubuntu – Nginx – 转发HTTP AUTH – 用户?

    我和Nginx和Jenkins有些麻烦.我尝试使用Nginx作为Jenkins实例的反向代理,使用HTTP基本身份验证.它到目前为止工作,但我不知道如何传递带有AUTH用户名的标头?}尝试将此指令添加到您的位置块

  9. Debian / Ubuntu – 删除后如何恢复/ var / cache / apt结构?

    我在ubuntu服务器上的空间不足,所以我做了这个命令以节省空间但是现在在尝试使用apt时,我会收到以下错误:等等显然我删除了一些目录结构.有没有办法做apt-getrebuild-var-tree或类似的?

  10. 检查ubuntu上安装的rubygems版本?

    如何查看我的ubuntu盒子上安装的rubygems版本?只是一个想法,列出已安装的软件包和grep为ruby或宝石或其他:)dpkg–get-selections

返回
顶部