web-dev-qa-db-ja.com

Android電話との間でファイルを取得する

電話でファイルシステムにアクセスするのに問題があります(samsung/google galaxy nexusです)。 Ubuntuの以前のバージョンでは機能していましたが、MTPまたはPTPのどちらでマウントされているかに関係なく、空のように見えます。 libmtpなどのビルドと再インストールに関するいくつかのガイドに従いましたが、成功しませんでした。 この回答 も役に立たず、接続ボタンをクリックするとgMTPがハングするだけです。私はwifiを使用できることを知っていますairdroidは私の写真にアクセスしますが、これは遅すぎて私には少し不器用で、ダウンロードした写真は元のタイムスタンプを失います。

誰もが12.04にこの電話に接続できましたか?

15
wim

このスレッド で書いたように、いくつかの解決策があります。

ルート化された電話を持っていない場合、 Samba Filesharing をインストールできず、電話に従来のsamba共有を含めることはできません。

しかし、 このスレッド を見ると、 ASTROファイルマネージャー に加えて SMBモジュールroot accessなしでも動作するようです(テストされていません)私、確認できません)。 AirDroid は、テストの別の選択肢になる可能性があります。

4
Avio

前提条件

まず、必要なパッケージをインストールします。

Sudo apt-get install mtp-tools mtpfs

少しのエルボーグリース

Android電話をコンピューターに接続します。携帯電話で通知ドロワーを開き、USB Connection typeをクリックします。 MTPが選択されていることを確認してください。

MTP Mode

次に、Ubuntuで次のコマンドを実行します。

mtp-detect | grep idVendor
mtp-detect | grep idProduct

idVendorおよびidProductの前に記載されている数字を書き留めます。これらは後で必要になります。


ここで、次のコマンドを実行します。

gksu gedit /etc/udev/rules.d/51-Android.rules

Geditウィンドウが開きます。このテキストをすべて1行で入力します。

SUBSYSTEM=="usb", ATTR{idVendor}=="VENDORID", ATTR{idProduct}=="PRODUCTID", MODE="0666"

VENDORIDを、前に書き留めたidVendorに置き換えます。同様に、PRODUCTIDを書き留めたidProductに置き換えます。

ファイルを保存して閉じます。


電話を切断し、次のコマンドを実行します。

Sudo service udev restart
Sudo mkdir /media/androiddevice
Sudo chmod a+rwx /media/androiddevice
Sudo adduser yourusername Fuse

yourusernameをUbuntuユーザー名に置き換えます。ここで、次のコマンドを実行します。

gksu gedit /etc/Fuse.conf

Geditウィンドウで、最後の行の先頭(#で始まる行)の#user_allow_otherを削除します。ファイルを閉じて保存します。


コンピューターを再起動してから、次の3つのコマンドを実行します。

echo "alias Android-connect=\"mtpfs -o allow_other /media/androiddevice\"" >> ~/.bashrc
echo "alias Android-disconnect=\"fusermount -u /media/androiddevice\"" >> ~/.bashrc
source ~/.bashrc

電話機を再接続し、MTPモードのままであることを確認してから、次のコマンドを実行します。

Android-connect

タダム!

これで、Nautilusを使用してAndroid電話のコンテンツを閲覧できます。ファイルマネージャを起動し、サイドバーで電話の名前をクリックして、USBスティックの場合と同じように電話のファイルシステムを参照します。通常のファイルシステムと同様に、ファイルを追加、削除、および変更できます。

Phone filesystem


ただし、Nautilusイジェクトアイコンを使用して電話を切断できないことに気付いたかもしれません。代わりに、電話を安全に削除するには、次のコマンドを実行する必要があります。

Android-disconnect

今後は、Android-connectを実行して電話をマウントし、Android-disconnectを実行して電話を安全に削除する必要があります。その他はすべて自動的に処理される必要があります。

注:これらの2つのコマンドを実行するには、root権限は不要です。 Fuseユーザーグループのメンバーであるすべてのユーザーは、ルートアクセスなしでこれらのコマンドを実行できる必要があります。

できた

それでおしまい!アイスクリームサンドイッチ電話をUbuntuコンピューターに正常に接続しました。


出典: OMG!Ubuntu!

11
SirCharlo

それらの間でデータを転送する別の方法として、PCとモバイルデバイス(タブレットまたは電話)の両方でUbuntu Oneを使用してみてください。

0
martini