Skip to content

Commit

Permalink
Merge pull request #102 from zamber/group-and-readme-fix
Browse files Browse the repository at this point in the history
Group and readme fix for #101
  • Loading branch information
M0Rf30 authored Feb 2, 2017
2 parents f0aa863 + 2010aef commit 7f109c4
Show file tree
Hide file tree
Showing 2 changed files with 35 additions and 217 deletions.
72 changes: 35 additions & 37 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,51 +1,49 @@
# android-udev-rules

## Description
These rules refer to https://developer.android.com/studio/run/device.html and include many suggestions from the Archlinux and Github Community.

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.
These rules refer to [Run Apps on a Hardware Device - Android Studio](https://developer.android.com/studio/run/device.html) and include many suggestions from the Archlinux and Github Communities.


Use this format to add each vendor to the file(example vendor ID is for HTC):
`SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", MODE="0666", GROUP="plugdev"`
## Installation

The MODE assignment specifies read/write permissions, and GROUP defines which Unix group owns the device node.
### Arch

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. please refer to 51-android.rules in [ubuntu directory](ubuntu)
On Arch it should be enough to follow the [instructions for connecting a device on the Arch wiki](https://wiki.archlinux.org/index.php/android#Connect_device). There's no need to clone this repository.

## Installation

#### For Ubuntu

```sh
# Clone the repo (replace repo-url with the Github URL)
git clone <repo-url>
# Create a sym-link to the rules file
sudo ln -s `pwd`/android-udev-rules/51-android.rules /etc/udev/rules.d/
# Change file permissions
sudo chmod a+r /etc/udev/rules.d/51-android.rules
# Restart UDEV
sudo udevadm control --reload-rules
sudo service udev restart
# Add plugdev group to your <login-id>
sudo usermod -a -G plugdev <login-id>
# Repluging your Android and verify adb is enabled in developer options
# Restart ADB server
adb kill-server
adb devices
# You should now see your device
```

## Troubleshooting
Try group plug**in**dev rather than plugdev, then restart udev.
### Ubuntu

# Clone this repository
git clone [email protected]:M0Rf30/android-udev-rules.git
# Create a sym-link to the rules file
sudo ln -s `pwd`/android-udev-rules/51-android.rules /etc/udev/rules.d/
# Change file permissions
sudo chmod a+r /etc/udev/rules.d/51-android.rules
# add the adbusers group if it's doesn't already exist
sudo groupadd adbusers
# Add your user to the adbusers group
sudo usermod -a -G adbusers $(whoami)
# Restart UDEV
sudo udevadm control --reload-rules
sudo service udev restart
# Restart the ADB server
adb kill-server
# Replug your Android device and verify that USB debugging is enabled in developer options
adb devices
# You should now see your device


## To Contribute:

1. Please fork this repository
2. Make your edits
3. TEST IT!
4. Create a pull-request
1. Fork this repository.
2. Make your edits.
3. TEST THEM!
4. Create a pull request.


## Note

Some devices (particularly MediaTek and Xiaomi) also require an entry in $HOME/.android/adb\_usb.ini. You can use the adb_usb.ini

`ln -s `pwd`/adb_usb.ini $HOME/.android/
Some devices (particularly MediaTek and Xiaomi) additionally require an entry in `$HOME/.android/adb_usb.ini`. You can use the adb_usb.ini from this repository:

ln -s `pwd`/adb_usb.ini $HOME/.android/
180 changes: 0 additions & 180 deletions ubuntu/51-android.rules

This file was deleted.

0 comments on commit 7f109c4

Please sign in to comment.