MTP

Prerequisites
If your device is not recognized by libmtp, try upgrading to latest (or even git) version.

MTPFS
You need to add option: user_allow_other in /etc/fuse.conf

$ mkdir ~/AndroidDevice $ mtpfs -o allow_other ~/AndroidDevice

NOTE: this can take really long time, up to several minutes. As an indication of successful mount the mtpfs will go to background. NB: Make sure your Android device is not going to sleep and the screen is not getting locked. Set screen timeout to very long values, or enable in Development section flag "Do not turn off the screen". To unmount: $ /usr/bin/fusermount -u ~/AndroidDevice

Go-MTPFS
Seems to be more stable

$ emerge -a go $ mkdir ~/go $ export GOPATH=/home/$USER/go $ go get github.com/hanwen/go-mtpfs

To mount: $ ~/go/bin/go-mtpfs ~/AndroidDevice

To unmount: $ /usr/bin/fusermount -u ~/AndroidDevice