AndroidStudioでアプリをデバッグできない


81

Android Studioでアプリを作成していますが、adbを使用してデバッグしようとしています。Androidという単語と下部のバーのロゴをクリックすると、logcatが表示され、デバイスが認識されます。それから私はこれを見ます:

スクリーンショット

アプリを「デバッグ可能」にするには、アプリに何をする必要がありますか?

参考までに、以前はEclipseでこのアプリを開発していましたが、adbは正常に機能していました。


解決策を見つけましたか?
ポール

デバイスからアプリをアンインストールし、Android Studioから再度実行すると、問題が解決しました
Ahmad Behzadi 2016

3
今日問題が発生しました。ブレークポイントでプログラムを停止できません。そしてそれはbuild.gradleの設定によるものでした。minifyEnabledがtrueのデバッグビルドタイプを設定しました。これを削除すると、ブレークポイントが機能します。
キャッスルバイ2016年

ここで私の答えを見てください。それは問題を解決するかもしれません
Muahmmad Tayyib 2018

回答:


85

ツールバーにデバッグアイコンがあります。それは小さな「バグ」のように見え、実行アイコン(再生ボタンのように見えます)のすぐ隣にあります。それでアプリケーションを起動してみてください。

デバッグするにはここをクリック

編集:Android StudioをGradleで使用する場合、以下は非推奨になります。

AndroidManifest.xmlファイルにはデバッグフラグもあります。これはアプリケーションタグの下にあり、次のように「true」に設定する必要があります。

<application android:debuggable="true">
</application>

1
Eclipseのように、一度に1行ずつステップできますか?可能であれば、それを行う方法は?
Ari R. Fikri 2013

1
もちろんできます。ブレークポイントに到達すると、デバッグウィンドウが表示され、上部のツールバーにさまざまなステップコマンドが含まれます。File-> Settings-> Keymap-からさまざまなデバッグキーボードショートカットを設定することもできます。これらはMain menu->の下にありRunます。詳細については、これを参照してください。
free3dom 2013

7
最新バージョンのandroidstudioでは、android:debuggableを設定する必要はありません。実際、マニフェストではなく構成で設定することを提案する波線が表示されます。これは、デバッグ情報を含むアプリを誤って公開することを回避するのに役立ちます。
Soundararajan 2015年

3
2015年は機能しません、build.gradle put buildTypes {debug {

2
それは私の仕事です。マニフェスト<applicationandroid:debuggable = "true"> </ application>に入れて、完全にデバッグします。おかげで
アンディ・ルイス・

111

次の手順を実行した後、この問題を解決しました。

Tools ==> android ==> Disable ADB Integrationに移動し、再度有効にします。

その後、USBをデバイスから取り外し、再度接続します。

最後にShift + F9を押します


これが私を助けたものです。これが再び機能した後、突然デバッグが機能しなくなりました。
ルイサントス

今日の時点で動作している間、再起動とすべてを試してみました。
Mathijs Segers 2015

1
バグを機能させるには、そのプロジェクトインスタンスのAndroid Studioを閉じて再度開く必要がありました:/
Rachael 2015年

18
AndroidStudioバージョン3.1.3には「Tools ==> android」というメニュー項目はなく、このオプションはどこにも見つかりません
James Watkins

1
どこかのAndroid StudioのメニューでNO「ADB」オプションません4
spartygw

34

注意すべきもう一つのこと(私はこれをしたので、私は知っています、当たり前です)。デバッグ用にProguardを有効にしないでください!


6
ありがとう、minifyEnabledをfalseにし、shrinkResourcesをfalseにする必要がありました
Janardhan R

16

また、Android Studioで何度もデバッグした後でも、この問題がランダムに発生しました。ある日、デバッガーが接続されませんでした。Android Studioを終了して再度開くだけで、デバッガーが再び機能し始めました。


16
    <application android:debuggable="true">
</application>

これはもう機能しません!マニフェストでdebuggable = "true"を使用する必要はありません。

代わりに、ビルドバリアントを「デバッグ」に設定する必要があります

デバッグモード

Androidのメーカーでは、に行くBUILD - >ビルドバリアントを選択します

次に、デバッグを試してください。ありがとう


ビルドメニューには、「ビルドバリアントの選択」オプションがありません。
ピートアルビン

14

これは私のために働いた:

  1. AndroidStudioを閉じます。
  2. シェルを開き、次のように記述します。

    adb kill-server

    adb start-server


まさに私が探していたもの。以前、私はこれは単純なと片付けることができadb reconnectコマンドが、それはAS 3.1にはもうこれを実行しない(多分私は何かを間違っているのか、十分ではありませんよ?
VictorB

ところで、このソリューションは、ASまたはターミナルセッションを閉じなくても機能しました。
VictorB 2018年

11

ADB統合が有効になっていることを確認してください。

メニュー:[ツール]-> [Android]-> [ADB統合を有効にする(v1.0)]


11

アプリケーションが以前はデバッグ可能でしたが、突然デバッグできなくなった場合、これが私の解決策です

  1. USB debug電話機のスイッチを無効または有効にします。
  2. アプリケーションをアンインストールします。
  3. [AndroidStudioで実行]をクリックします。

8

Android Studioでアプリケーションをデバッグできない1つのケースは、「リリース」ビルドバリアントが選択されている場合です。私に起こりました-Gradleがアプリのリリースバージョン(デバッグ可能ではありません)をビルドすると、AndroidStudioはデバッガーへの接続に失敗します。


1
これは、他のIDEでも、何度も私をつまずかせました。リリースをデバッグする機能はほとんどのIDEで構成可能であり、リリースされたアプリにデバッガーをアタッチする場合はアドバイスされることがあります。
visc 2017

7

これは時々私に起こります、そして私はまだ理由を理解していません。すでに投稿されているソリューションはどれも私にとってはうまくいきませんでした。私のために働く唯一のことは次のとおりです。

  1. デバイスからアプリケーションをアンインストールします。
  2. クリーンプロジェクト。「ビルド->クリーンプロジェクト」
  3. 再構築してインストールします。

7

マニフェストファイルでカスタムの「android:process」を設定する場合は、「デバッガをAndroidプロセスにアタッチする」アイコンを使用する必要があります。
私の場合、適切なプロセスを選択し、「デバッガーを待つ」ダイアログが表示された直後に「OK」ボタンをクリックする必要があります。
ここに画像の説明を入力してください


恐ろしい回避策ですが、今私のために働いている唯一のこと、ありがとう!!!
ジュール

マニフェストファイルにカスタムの「android:process」がない場合でも、機能しました。
Jason Bowers 2017

これが私にとっての解決策でした。ありがとう
gmartinsnull 2018年

4

デバッグボタンの横にあるドロップダウンメニューでアプリプロジェクトが選択されているかどうかを確認します。AndroidStudioがこの選択をリセットすることがあります...

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


4

有効にした場合

<application android:debuggable="true">
</application>

アプリケーションmanifest.xmlで、最終的な署名付きapkを生成するときに必ず無効にしてください。これは、攻撃者のセキュリティの抜け穴として機能する可能性があるためです。アプリケーションの1つだけがログを表示しない場合にのみ使用してください。ただし、そのオプションを検討する前に、これを試してください。

AndroidStudioのツールに移動します

 Tools==>android==>disable adb integration and again enable it

3

また、Eclipseなど、ADBを使用している可能性のある他のアプリケーションも使用していないことを確認してください。


3

私はすべての方法をテストしました、そしてそれらのどれもうまくいきませんでした!!!

最終的にadbポートを変更する必要があり、それは機能しました。最初に以下のようにadbサーバーを強制終了します。

adb kill-server

次に、別のポートを使用して再起動します

adb -P 5038 start-server

3

以下のコマンドを使用してクリーンビルドを行いました。驚くほどうまくいきました。

shgradlewクリーンビルド

うまくいけば、誰かが助けを得る!


1
どのコンソールで起動する必要がありますか?
DmitryBoyko 2018

このコマンドをAndroidStudioターミナルで実行するか、外部ターミナルからプロジェクトに移動します
HaiderAli19年

3

私の場合、任意の行の近くに、Android Studio Gradleブレークポイントのように、「行に実行可能コードが見つかりません...」というメッセージが表示された十字と赤い線が付いた赤い円が表示されました

の更新後に問題が発生しましたbuild.gradle。Kotlinのサポートを含めたため、多くのメソッドが64Kを超えました。問題の行:

buildTypes {
    debug {
        minifyEnabled true

それらを次のように変更します。

buildTypes {
    debug {
        minifyEnabled false
        debuggable true

次に、「プロジェクトをGradleファイルと同期」ボタンでgradleを同期します。アプリケーションを再起動した後、次のエラーが発生する場合:「エラー:.dexファイル内のメソッド参照の数は64Kを超えることはできません。https://developer.android.com/tools/building/でこの問題を解決する方法をご覧ください。 multidex.html "、次に、.dexファイル内のメソッド参照の数は64k API17を超えることはできません。次の行を次のように追加しますbuild.gradle

android {

    defaultConfig {
        ...

        // Enabling multidex support.
        multiDexEnabled true
    }
    ...
}

dependencies {
    implementation 'com.android.support:multidex:1.0.2'
}

更新

https://developer.android.com/studio/build/multidex.htmlによると、Android 5.0より下のマルチデックスサポートを有効にするには、次の手順を実行します。それ以外の場合は、これらのデバイスでは起動しません。

AndroidManifestタグを開いて検索します<application>。Nearandroid:name=は、Applicationクラスへの参照です。このクラスを開きます。次のMultiDexApplicationようにアプリケーションクラスを拡張します。

public class MyApplication extends MultiDexApplication { ... }

アプリケーションクラスが設定されていない場合は、次のように記述します。

<application
        android:name="android.support.multidex.MultiDexApplication" >
    ...
</application>

2

デバイスまたはエミュレーターで開発者モードとUSBデバッグを必ず有効にしてください。(新しいものを設定するときに忘れがちです。)


2

また、[ツール]-> [Android]-> [ADB統合を有効にする]をアクティブにする必要があります。


2

[実行]-> [構成の編集]に移動し、プロジェクトを選択し、[デバッガー]タブを選択してから、[デバッグの種類]を[自動]から[デュアル]に変更することで修正できました。ここに画像の説明を入力してください


1

これで私の問題は解決しました。デバイスからアプリをアンインストールし、AndroidStudioを介して再度実行します。


1

私の場合、Proguardを使用したときに発生したので、すべてのソリューションを試して、プロジェクトをクリーンアップし、Android Studioのデバッグボタンを押して、デバッグを開始しました


1
私はAndroidStudio 4.1でこの問題に直面し、あなたの解決策が私を助けてくれました。おかげで
Buckstabue

1

私の場合、テキストファイルproguard-rules.proを完全にクリアminifyEnabled falseしてbuild.gradleファイルを作成することにより、デバッグビルドタイプのプロガードを削除する必要がありました

  debug {
            debuggable true
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }

1
<application android:debuggable="true">
</application>

上記のコードはもはや解決策ではありません。build.gradleファイル内でデバッグを有効にする必要があります。異なるbuildTypeがある場合は、ビルドタイプの1つで「debuggabletrue」を設定してください。これが私のプロジェクトの1つからのサンプルコードです。

buildTypes {
    debug {
        debuggable true
    }

    release {
        debuggable false
    }
}

**ここのgradleファイルから、この質問に関係のないbuildTypes内の他の行を削​​除しました。

また、デバッグを行う際には、AndroidStudioで正しいビルドバリアントを選択していることを確認してください。

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


1

何年にもわたって私はこのスレッドを何度も訪れましたが、いつも違う反応がありました。今回は、デバッガーが正しく動作するのを妨げていたのは私のUSBハブであることがわかりました。奇妙に聞こえるかもしれませんが、電話をUSBハブ経由でコンピューターに接続する代わりに、Macに直接接続する必要があり、デバッグが機能し始めました。


1

私の場合、デバッグbuildTypeでminifyEnabled = trueとshrinkResources = trueを忘れました。これらの値をfalseに変更すると、再び機能します。

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


0

いくつかの問題が発生する可能性があります。logcat出力ウィンドウ(虫眼鏡のあるテキストボックス)に誤ってフィルターを入力してしまい、忘れてしまう可能性があります。すべての出力をフィルターで除外し、何もないように見せることができます。


0

私の場合、署名されたapkをデバッグしようとしたため、同じ問題が発生しました。Gradle構成で、さまざまなビルドバリアントを作成し、本番キーストア.jksを使用してリリースビルドをデバッグしようとしました。



0

アンドロイドスタジオから、ADBサーバを再起動します。ツール- >「Troubleshhotデバイスの接続

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