我有一个apk,我已经签名并上传到Android Market,并安装在我的手机上。我想在我的手机上运行时调试此版本apk(通过Eclipse)。我以前做过这个(并记住它是使用Android开发工具之一;也许是Dalvik Debug Monitor),但遗憾的是它不记得如何做到这一点并且无法在线找到任何文章。有谁知道如何做到这一点?
注意:我在中设置了
android:debuggable="true"
并在手机上启用了USB调试。
答案 0 :(得分:104)
我知道这是一个老问题,但未来的参考。在带有Gradle的Android Studio中:
buildTypes {
release {
debuggable true
runProguard true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
行debuggable true
对我来说很有用。
<强>更新强>
从gradle 1.0开始,它是minifyEnabled
而不是runProguard
。看here
答案 1 :(得分:61)
确保在清单文件的android:debuggable="true"
标记中设置application
,然后:
答案 2 :(得分:37)
除了Manuel的方式,你仍然可以使用Manifest。
在Android Studio stable中,您必须在application
文件中将以下两行添加到AndroidManifest
:
android:debuggable="true"
tools:ignore="HardcodedDebugMode"
第一个将启用已签名APK的调试,第二个将阻止编译时错误。
在此之后,您可以通过“将调试程序附加到Android进程”按钮附加到该进程。
答案 3 :(得分:8)
我试着使用以下内容并且它起作用了:
release {
debuggable true
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
答案 4 :(得分:3)
将以下内容添加到您的应用程序build.gradle中,然后选择指定的发行版变体并运行
signingConfigs {
config {
keyAlias 'keyalias'
keyPassword 'keypwd'
storeFile file('<<KEYSTORE-PATH>>.keystore')
storePassword 'pwd'
}
}
buildTypes {
debug {
debuggable true
signingConfig signingConfigs.config
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
答案 5 :(得分:1)
如果您决定调试 your apk,它已经在市场上出售,但没有分配为可调试的,并且您不想再次发布它。因此,请按照以下步骤操作;
apktool d <APK_PATH>
)反编译Apk android:debuggable="true"
标签中设置application
apktool b <MODIFIED_PATH>
)答案 6 :(得分:0)
如果您需要运行不可调试的 apk,此答案会有所帮助:
运行已签名的 apk:
adb install C:\appPath\app\release\app-release.apk
然后将 LogCat 中的下拉列表更改为 Error。
您现在可以看到错误。