2013-07-13 15 views
6

Secondo i documenti Gradle, il valore predefinito per "debuggable" e "release" buildType è falso. Tuttavia, sia che io lo imposti esplicitamente su falso o no, la mia versione di rilascio sembra sempre essere debuggabile (posso vedere l'output di logcat). Sto interpretando male questa proprietà? Qualcuno può spiegare per favore?La versione di rilascio gradle è ancora debuggabile?

Ecco la mia build.gradle:

buildscript { 
    repositories { 
     mavenCentral() 
    } 

    dependencies { 
     classpath 'com.android.tools.build:gradle:0.4.2' 
    } 
} 

apply plugin: 'android' 

dependencies { 
    compile project(':facebook-android-sdk-3.0.1:facebook') 
    compile project(':google-play-services_lib') 
    compile project(':nineoldandroids') 
    compile project(':SlidingMenu-master:library') 
    compile project(':ViewPagerIndicator') 
    compile project(':volley') 
    compile project(':windowed-seek-bar') 
    compile files('compile-libs/androidannotations-2.7.1.jar', 'libs/Flurry_3.2.1.jar', 'libs/google-play-services.jar', 'libs/gson-2.2.4.jar', 'libs/picasso-1.1.1.jar', 'libs/crittercism_v3_0_11_sdkonly.jar', 'libs/gcm.jar', 'libs/apphance-library.jar') 
} 

android { 
    buildToolsVersion "17.0" 
    compileSdkVersion 17 

    signingConfigs { 
     debug { 
      storeFile file('keystores/debug.keystore') 
     } 

     release { 
      storeFile file('keystores/release.keystore') 
      storePassword "***" 
      keyAlias "***" 
      keyPassword "***" 
     } 
    } 

    buildTypes { 
     release { 
      signingConfig signingConfigs.release 

      sourceSets { 
       main { 
        manifest.srcFile 'AndroidManifest.xml' 
        java.srcDirs = ['src', 'normal'] 
        resources.srcDirs = ['src'] 
        aidl.srcDirs = ['src'] 
        renderscript.srcDirs = ['src'] 
        res.srcDirs = ['res'] 
        assets.srcDirs = ['assets'] 
       } 
      } 
     } 
    } 
} 

risposta

7

La visualizzazione logcat non è legata al fatto che l'app sia debuggabile o meno.

Se si vede il processo in DDMS, l'app è debuggabile (a meno che non si guardi un emulatore nel qual caso tutte le app sono considerate debugabili).

1

Per essere sicuri che il debug non è consentito, è possibile dichiarare debuggable=false nel tag applicazione nel AndroidManifest.xml. Non so se ti aiuterà nel tuo caso.

6

Se si utilizza Build -> Genera APK firmato in Android Studio, viene utilizzata l'attività assembleDebug gradle invece di assembleRelease. Prova a eseguire l'attività assembleRelease manualmente e il flag di debugging deve essere falso

Problemi correlati