2012-01-31 178 views
49

我有一個apk,我已經簽署並上傳到Android Market,並安裝在我的手機上。我想在我的手機上運行時調試此發行版apk(通過Eclipse)。我之前完成了這個工作(並且記住它是與其中一個Android開發工具,可能是Dalvik Debug Monitor),但不幸的是,它不記得如何去做,並且一直無法在線找到任何文章。有誰知道這可以做到嗎?如何調試apk簽名發佈?

注:設置在清單android:debuggable="true"並啓用USB調試我的手機上。

+0

什麼是你目前正在努力?你不知道如何在Eclipse中使用設備視圖? – 2012-01-31 15:32:43

+0

我現在在Eclipse中顯示Devices視圖。我可以在設備列表中看到我的設備。我點擊它,但儘管應用程序在手機上運行且源項目存在並在工作區中打開,但「調試所選進程」按鈕仍處於禁用狀態。有任何想法嗎?! – 2012-01-31 15:43:59

+0

您是否在應用程序的包名上點擊? – 2012-01-31 15:48:59

回答

47

確保android:debuggable="true"在您的清單文件的application標籤設置,然後:

  1. 將您的手機變成您的計算機和手機上啓用USB調試
  2. 打開日食和包含代碼爲您的應用程序的工作區
  3. 在Eclipse中,去窗口 - >顯示視圖>設備
  4. 看在設備上查看它現在應該是可見的,你應該可以看到你的設備清單當然d
  5. 如果您的設備沒有列出,你必須繼續
  6. 之前追蹤到你的手機ADB驅動程序如果你想步執行代碼,在您的應用程序
  7. 打開設置斷點的地方應用程序
  8. 在設備視圖中,展開手機的條目(如果尚未展開),然後查找應用程序的軟件包名稱。
  9. 點擊軟件包名稱,在Devices視圖的右上角,您會看到一個綠色的錯誤以及其他一些小按鈕。點擊綠色的錯誤。
  10. 你現在應該連接/調試你的應用程序。
+0

我起牀第8步,但由於某種原因,我的應用程序的包名不顯示當我運行簽名/釋放apk。 (奇怪的是,當我直接從Eclipse運行我的手機上的應用程序(調試apk)時顯示。)困惑... – 2012-01-31 16:18:56

+2

明白了!我已經將'android:debuggable =「true」'屬性放在'manifest'標籤中,而不是manifest中的'application'標籤了!我的壞處:謝謝Sam_D,非常感謝你的指導,如果沒有你,或者充其量只會花費很長時間! – 2012-01-31 16:25:00

+0

OK很酷,很高興它解決了! – 2012-01-31 16:26:24

72

我知道這是老問題,但未來的參考。在Android Gradle Studio中:

buildTypes { 
    release { 
     debuggable true 
     runProguard true 
     proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' 
    } 
} 

debuggable true對我來說是個詭計。

更新:

由於gradle這個1.0是minifyEnabled而不是runProguard。看看here

+5

請注意,從gradle 1.0它是** minifyEnabled **而不是** runProguard ** - 請參閱http://tools.android.com/tech-docs/new-build-system/migrating-to-1-0-0 – m02ph3u5 2015-11-11 16:35:57

+0

謝謝@ m02ph3u5,回答更新! – 2015-11-12 19:32:23

28

除了曼努埃爾的方式,你仍然可以使用Manifest。

在Android Studio中穩定,您必須將以下兩行添加到applicationAndroidManifest文件:

android:debuggable="true" 
    tools:ignore="HardcodedDebugMode" 

第一個將能夠簽署APK的調試,而第二個將防止編譯時錯誤。

之後,您可以通過「將調試器附加到Android進程」按鈕來附加進程。

+1

不適用於我。 – jaibatrik 2016-06-19 14:12:26

+0

@jaibatrik它必須是你的apk,你必須附加調試器的來源。如果你正在做這兩個,它仍然無法正常工作,分享更多的信息,我可以嘗試以幫助 – sandalone 2016-06-19 20:14:00

+0

我得到了「[致命錯誤]:7:203:與元素類型」應用程序「關聯的屬性」工具:忽略「的前綴」工具「沒有綁定」Is tools:ignore =「HardcodedDebugMode」合法配置在這裏? – 2017-04-28 03:03:56

1

我試着用以下的和它的工作:

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

這個答案已經在這個主題中給出了曼努埃爾洛佩拉......三年前!看到這裏:https://stackoverflow.com/a/27181562/1071320 – 2017-09-12 21:49:32

+0

@AdilHussain但我試過這個答案它不適合我。看到'minifyEnabled false'我的答案有所不同,他的情況是'runProguard true'。請參閱更改 – 2017-09-14 09:36:13

+0

不是什麼大不了的,但他的答案確實包含了對此效果的更新。無論如何。沒什麼大不了的。感謝你的回答。 – 2017-09-14 10:07:37

相關問題