Android Android Studio 2.1.3およびgradleを使用してアプリケーションを開発しています。
問題は、アプリケーションのデバッグ中に条件が満たされるため、単純なメソッドのブレークポイントにヒットする必要がありますが、ブレークポイントにヒットしないことです。
まず、問題はこの質問の答えに記載されている問題に関連していると考えました。 gradleを使用してライブラリプロジェクトをビルドする場合、BuildConfig.DEBUGは常にfalse
これをテストするために、ライブラリプロジェクトを削除し、すべてのソースコードをメインアプリモジュールに統合しました。何も解決しませんでした。以下はbuild.gradleであり、デバッグ/リリースの両方でminifyがfalseに設定されていることに注意してください。
apply plugin: 'com.Android.application'
Android {
compileSdkVersion 23
buildToolsVersion "23.0.2"
defaultConfig {
applicationId "com.mycompany.mymobileapp"
minSdkVersion 21
targetSdkVersion 21
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
debuggable true
jniDebuggable true
renderscriptDebuggable true
zipAlignEnabled false
}
debug {
debuggable true
minifyEnabled false
zipAlignEnabled false
jniDebuggable true
renderscriptDebuggable true
}
}
productFlavors {
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
testCompile 'junit:junit:4.12'
testCompile 'org.mockito:mockito-core:2.0.5-beta'
testCompile 'com.Android.support:support-v4:23.1.1'
testCompile 'org.powermock:powermock-api-mockito:1.6.2'
testCompile 'org.powermock:powermock-module-junit4-rule-agent:1.6.2'
testCompile 'org.powermock:powermock-module-junit4-rule:1.6.2'
testCompile 'org.powermock:powermock-module-junit4:1.6.2'
compile 'com.Android.support:appcompat-v7:23.1.1'
}
以下は、Android Studioが私に見せてくれるスクリーンショットです:
これも唯一のケースではありません。コンパイラーは、ステップオーバー中に、デバッグされている部分とはまったく別の部分にジャンプします。
ここに合理的な説明はありますか?サスペンド:「thread」と「all」が同じ結果を試みました。
UPDATE 1:Eclipseを使用してプロジェクトを再作成すると、すべてが正常に機能します。 Android studioを使用してもこれが機能しない理由はまだ驚くべきことです!
buildTypes {
release {
minifyEnabled true
shrinkResources true
proguardFiles getDefaultProguardFile('proguard-Android.txt')
}
debug {
debuggable true
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-Android.txt')
}
}
Build.gradleファイルのデバッグブロックでminifyEnabled falseを設定します。
私は同様の問題に直面していました。
私はもう試した:
うまくいきませんでした。
最後にそれを機能させるためにやったことは Ctrl+Shift++。これは、すべてのコードブロックを展開するためのショートカットです。その後、プロジェクトを実行したところ、うまくいきました。
プロジェクトをクリーンアップして再構築してください。このメソッドでログを作成して、実行されているかどうかを確認してください。
LOG.(TAG,"method being executed")
再起動Android Studio
以前は動作していたため、これを引き起こす可能性のある変更は何もなかったことがわかっている場合。次に、Android Studioを閉じて再起動します。Android Studio 3.5
でうまくいきました。
クリーンビルドが機能しませんでした