用 Android Studio 的時候經常會用 debugger 設定 breakpoint 停下來抓蟲。step trace 的時候往往也會跳進 sdk 裡面的 code。Android Studio 會 decompile 並且找 source code 來幫助我們 trace

  • Android Studio 會看 build.gradle 裡面的 compileSdkVersion 來決定開發環境用的 sdk version
  • 如果設定成 23,就會去找 API 23 的 source code。所以要用 Android SDK Manager 下載 API 23 的 source code
  • 如果是用 emulator 當開發環境,記得也要把 image 版本設定到相同的 API 23

其實應該算是合乎邏輯的常識,結果我自己也踩了一下洞,想說怎麼 step trace sdk source code 的時候怪怪的,停在不正確的地方。

以前都隨便指定 compileSdkVersion,想說開發環境沒有差。產生 emulator image 的時候也沒有特別注意,最後還是咬了自己一口。

野人獻曝,以上!

Upgrade Retrofit 1.X to 2 ← Prev Next → Inkscape crashed in Debian testing