set up device for development (???????????? no per

2018-12-31 16:55发布

I am using a Samsung galaxy nexus phone (Android 4.0 platform) .

I am developing Android app on Ubuntu linux OS. I would like to run my application directly on the Samsung handset device, so I performed the following setup steps:

  1. in my project AndroidManifest.xml file, added android:debuggable="true" to the <application> element

  2. On the device, in the Settings > Security enabled Unknown sources

  3. On the device, in the Settings > Developer options enabled USB debugging

  4. On my computer, created the /etc/udev/rules.d/51-android.rules file with the following content:

    SUBSYSTEM=="usb", ATTR{idVendor}=="04E8", MODE="0666", GROUP="plugdev" 
    
  5. On my computer, run the chmod a+r /etc/udev/rules.d/51-android.rules command

Then, on my computer I opened a terminal and executed the adb devices command, I got:

List of devices attached 
????????????    no permissions

Since I did not see my device but only ???????????? no permissions, I then run the following commands:

 adb kill-server
 adb start-server
 adb devices

But I still got:

List of devices attached 
????????????    no permissions

Why? What am I missing?

23条回答
旧人旧事旧时光
2楼-- · 2018-12-31 17:54

In Archlinux this can happen occasionally. The fix:

$ sudo -s
# adb kill-server
# adb start-server
查看更多
旧时光的记忆
3楼-- · 2018-12-31 17:54

I had the same problem, the solution is as fellow: (by the way, you don't have to root your device.)

  1. Type "su" to switch to super user.
  2. your-path/adb kill-server.
  3. your-path/adb start-server.
  4. If no error occurs, you can see the device list with "your-path/adb devices" in root account.
  5. Quit super user.
  6. Now you can perform "adb devices" in your account.

Enjoy.

查看更多
还给你的自由
4楼-- · 2018-12-31 17:54

I had the same problem with my Galaxy S3. My problem was that the idVendor value 04E8 was not the right one. To find the right one connect your smartphone to the computer and run lsusb in the terminal. It will list your smartphone like this:

Bus 002 Device 010: ID 18d1:d002 Google Inc.

So the right idVendor value is 18d1. And the line in the /etc/udev/rules.d/51-android.rules has to be:

SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", MODE="0666", GROUP="plugdev" 

Then I run sudo udevadm control --reload-rules and everything worked!

查看更多
临风纵饮
5楼-- · 2018-12-31 17:56

In my case on ubuntu 12.04 LTS, I had to change my HTC Incredible usb mode from charge to Media and then the device showed up under adb. Of course, debugging was already on in both cases.

查看更多
看风景的人
6楼-- · 2018-12-31 17:56

If anyone faces the following error message when they use adb devices

no permissions (verify udev rules); see [http://developer.android.com/tools/device.html]

Execute the following

sudo -s 
adb kill-server
adb start-server

That fixed the issue for me on a custom build android device

查看更多
登录 后发表回答