Android Studio:运行/调试版本的应用程序

Pau*_*est 12 debugging android release android-studio

我已将gradle build添加到Android应用,并可从Android Studio启动. gradlew build生成调试并发布(签名,用proguard缩小)版本.

buildTypes {
    debug {
        zipAlignEnabled true
        versionNameSuffix "-" + buildDateTime()
    }
    release {
        minifyEnabled true
        // Eclipse project.properties # proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-project.txt'
        zipAlignEnabled true
        signingConfig signingConfigs.release
        versionNameSuffix "-" + buildDateTime()
    }
Run Code Online (Sandbox Code Playgroud)

但是当我adb install在设备上发布时,它会在启动时崩溃.

如何从Android Studio运行/调试应用程序的发布版本以找到确切的问题所在?

或者我可以在Eclipse中手动发布已签名的apk吗?

car*_*ger 34

有一个名为"Build Variants"的窗口,您可以在其中选择要在仿真器/设备上安装的版本.

在此输入图像描述

您还必须添加debuggable true到您的发布版本中才能进行调试.

  • 顺便说一句,必须为发布构建类型添加“debuggable true”,请参阅http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Build-Types (3认同)

yoA*_*ex5 12

安卓运行.apk

View -> Tool Windows -> Build Variants
Run Code Online (Sandbox Code Playgroud)

此外,您还可以使用Gradle工具栏或./gradlew tasks --all

//install on device(which is running)
Tasks -> install -> install<build_varaiant>

//open 
adb shell am start -n <package_name>/.<activity_name>
Run Code Online (Sandbox Code Playgroud)

Tasks*Android Studio v4.2默认不包含。你应该Do not build Gradle task list during Gradle sync禁用Preferences -> Experimental