Android Studioは物理デバイスをNullとして認識しますか?


89

私はAndroid Application for Android(SDK最小バージョン14)を開発しており、などのタブレットでそれを通常にテストしていますSamsung Galaxy 2 and Nexus 7。ただし、([Run in]をクリックしてAndroidStudio)アプリケーションを実行しようとすると、ASはタブレット情報を認識しません。これは次の図に示されています。

デバイスがヌルです

興味深いのは、上の図に示されているように、API 1AndroidのバージョンであるときにASがデバイスsdkも検出していることです4.2.2 。タブレットはすでにUSB debugging開発者オプションで「」を受け入れるように設定されています。タブレットを再起動して、ASを再起動してみました、それでも同じ問題が発生します(すべてがで問題ありませんnexus 7 and Samsung Galaxy 2)。

私が作業しているタブレット/デバイスは「VeryKool」T742です

Environment information:
 OS: ubuntu
 AndroidStudio version: 0.8.6

 Tablet Android version:4.2.2
 Tablet Kernel version: 3.4.5
 App min SDK: 14

3
以前にこの問題がありました。タブレットがPCによって認識されないため、ユーザーにタブレットの使用を許可しないでください。(PCで)rootとしてadbサービスを開始するか、単にこのデバイスタイプをudevロールのどこかに追加します。その後、カメラのトリックなしで動作するはずです。カメラモードで変更した場合、デバイスは、システムで認識されている別のデバイス/製品IDを紹介するだけです。
user3387542 2014

@ user3387542しかし、このデバイスタイプを私のudevに追加する方法は?
AbdelHady 2014

ワオ。ありがとうございます。私はそれに何時間も浪費しました。そして私にとっての最後の解決策は、/ rootユーザーとしてAndroid Studioを起動することです。CentOS OSを使用しているため
Abdul Mohsin

回答:


161

OKそれで私はようやく問題を見つけました、明らかにこのデバイスではカメラとして接続するように設定する必要があります(USBデバッグがすでに有効になっている後でも)

ここに画像の説明を入力してください

また、このリンクは設定プロセスについて説明しています


3
私はこの問題について何日も調査してきましたが、解決策はそれを「カメラ」として接続することです。これはとても奇妙ですが機能しています!共有ありがとう
AbdelHady 14

私の場合はMTPが選択されていて、PTPに切り替えてからMTPに戻さないと機能しませんでした。
rjlopes 2015年

私も手がけました!理由がわからない!
bmnepali 2016

私の場合、ターミナルでもこの​​コマンドを実行しなければなりませんでしたadb devices
Zohab Ali

57

このエラーは、adbが正しい権限で接続されていないときに何度か見られました。

端末で試してください

~/Android/Sdk/platform-tools> ./adb devices    

戻る場合

<deviceIdentifier> no permissions

次に、正しい権限でadbを再起動する必要があります

~/Android/Sdk/platform-tools$> ./adb kill-server
~/Android/Sdk/platform-tools$> sudo ./adb devices

それがうまくいったなら、あなたは得るでしょう

List of devices attached
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
<deviceIdentifier>  device

その後、Android StudioでのSdkバージョン解決の問題はなくなります。


1
これを実行すると、デバイス名(nullなし)が一秒間表示されます。再びnullが表示されます
Shruti

1
接続タイプを変更しても、Google Pixelデバイスがnullになるため、これが最も正しい答えです。
kostyabakay 2018

驚くばかり!ありがとうございました。
Kirill Starostin、

22

デバイスをUbuntuシステムに接続した後で、次のコマンドを実行するだけです。

adb devices

これでうまくいきます。

注:電話でファイル転送オプションを選択していることを確認してください。


stackoverflow.com/a/34598874/9022007 adbデバイスが機能しない場合は、これも試してください
Rashil Shah

それは私のために働いています。1)adbデバイス2)設定->接続されたデバイス->
USB-

17

Ubuntuで、Pixel XLを8.0にして、コンピューターに接続しているときにこれを実行する必要がありました。

設定->接続されているデバイス-> USB->「ファイルの転送中」に変更


何の設定?
arekolek 2018

携帯電話の設定
RESTfulGeoffrey

接続してしばらくすると、Pixelがnullに切り替わっていました。デバイスを再起動し続けましたが、同じことが起こります。これは時々それを修正しますが、一時的にのみ、奇妙です...
hmac '

それは私のために働いています。1)adbデバイス2)設定->接続されたデバイス->
USB-

これは2019年のピクセル3でも機能します(永続的な解決策を探すためにここに来ましたが、まだ見つかりません。このアクションはまだ機能します)
Wesely

12

Ubuntu 18.04のNexus 5 / 5X / Pixel 2 XLでも同じ問題が発生します。

恒久的な解決策は、あなたが常にデバイスにアクセスできるように、udevのルールを追加することです。

  • コマンドを使用してデバイスを見つけますlsusb。たとえば、Pixel 2 XLの場合、次のように出力されます。

    Bus 001 Device 003: ID 18d1:4ee7 Google Inc.
    
    # This means: BUS=001, DEVICE=003, VENDOR=18d1, PRODUCT=4ee7
    
  • 権限を確認してください。001と003をパラメーターに置き換えます。

    ls -l /dev/bus/usb/001/008
    
    # Output: crw-rw-r-T 1 root root 189, 8 Nov 10 18:34 /dev/bus/usb/001/003
    # Unless you are root, you are missing the permissions to access the device
    
  • これを修正するにsudo nano /etc/udev/rules.d/51-android.rulesは、次の内容のudevルールファイルを作成します。

    SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4ee7", MODE="0660", 
    GROUP="plugdev", SYMLINK+="android%n"
    
    # You need to replace "18d1" and "4ee7" with your output of `lsusb` above
    
  • デバイスのプラグを抜き、再び差し込みます。これで、常に認識されるはずです。 そうでない場合は、最後にadbサーバーをで再起動しますadb kill-server

ソース:http : //www.janosgyerik.com/adding-udev-rules-for-usb-debugging-android-devices/


6

UbuntuでAndroid Studioを使用しているときに同じ問題が発生しました。どうやら私にとっての修正は、デバイスのUSB接続モードをMTPに設定することでした。


5

最初にadbのバージョンを確認します。

Android Debug Bridge version 1.0.32

次に、デーモンを再起動します。

sudo adb kill-server
sudo adb start-server

それ以外の場合は、最初にadbをインストールし、デーモンを再起動します。


5

最近、私はVivoとMI電話で同じ問題に直面していました。私はこのスレッドで説明されているすべてを試しました。MTP、PTPとして接続してみました。しかし、何もうまくいきませんでした。

多くの再試行の後、私は私のケースの解決策を見つけました、そしてそれは他の人を助けることもできるかもしれません。

  1. Android Studioでターミナルウィンドウを開く
  2. 次のコマンドを使用してADBサーバーを強制終了します。 adb kill-server
  3. 次のコマンドを使用してADBサーバーを再起動します。 adb start-server

それは私の問題を解決しました。


おかげで私の日が節約できました。常に24213213 [null]と表示されますが、操作するとSamsung Galaxyが表示されます...
waza123


4

私も同じ問題を抱えていました。

Androidデバイスの[設定]を開き、[デバッグ]を選択して[USBデバッグ]をオンにします。


4

私も同じ問題を抱えていました。私はこれを解決しました

  1. Android-> SDk->プラットフォームツール

2.(ubuntuユーザー)のターミナルを開くか、cmd(ウィンドウユーザー)を開きます

3.typeコマンド「sudo adb kill-server」

4. android studioに移動し、デバイスを再接続します。


1

ubuntuでadbをインストールするとうまくいきましたが、デフォルトのandroid studio oneに問題があったと思います。

端末使用コマンド

sudo apt install adb 

0

Linux(私の場合はCentos 6)では、Android Studioをrootユーザーとして起動しなかったことが原因である場合があります。rootユーザーとしてandroid studioを再起動して試してください!


2
これはひどい考えです。ルートとしてユーザーランドアプリケーションを起動しないでください!
agilob

0

ubuntuマシンの場合、転送オプションを選択すると、Androidスタジオでデバイスが検出され、デバッグも行われます。通常、デバイスはWindowsの充電状態ですが、ubuntuの場合はこれが機能します。

また、何度もデバイスが検出されない場合は、同じことをやり直してください。


0

MTPモードが必要ですが、USB側では表示されません。メニューバー項目のストレージ設定で、PC接続タイプを... MTPに設定します。


0

実行中のプロセスを確認します。いくつかのadbプロセスが実行されていましたが、これが問題を引き起こしていました。それらをすべて終了してから、スタジオを再起動してください。HTC Sync Manager、GenyMotionなど、および複数のAndroid Studioウィンドウを開いていると、複数のadbプロセスが競合する可能性があります。


0

特にUbuntuまたはその他のプラットフォーム。あなたのadbバージョンを確認してください。私はこれを十分に強調することはできません。特に上記の回答が機能せず、このリンクも機能しない場合は、それが更新されているか、最新バージョンであることを確認してください

にあるplatform-toolsフォルダーを更新した後

PATH_TO/Android/Sdk/platform-tools

それも含まれadbています。私は走った
adb devices

最初にそれは無許可を示します

あなたは、Androidデバイスを取り外して再度差し込みます。次に、システムがデバイスを読み取る前に、電話が許可を求めます。


0

私の場合、単に私の携帯電話を見て、ポップアップのチェックボックスをチェックしてUSBデバッグを許可するだけでうまくいきました。


-1

Android Studioのターミナルに移動し、「adbデバイス」を実行します。接続されているデバイスが表示されます。次に、アプリを実行すると、デバイスが表示されます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.