代码之家  ›  专栏  ›  技术社区  ›  ir2pid

调试生成和发布生成的不同清单

  •  2
  • ir2pid  · 技术社区  · 6 年前

    我想为 调试 释放 构建我的3种口味,我该如何做到这一点?

    android {
      productFlavors {
            flavor1 {}
            flavor2 {}
            flavor3 {}
        }
    }
    
    2 回复  |  直到 6 年前
        1
  •  3
  •   Jeelan    6 年前

    要为特定生成使用另一个清单文件,步骤如下:

    应用内构建。gradle[ie.Module App]在SourceSet下添加如下内容:

     sourceSets {
           // Default
            main {
                manifest.srcFile 'src/main/AndroidManifest.xml'
                java.srcDirs = ['src/main/java']
                resources.srcDirs = ['src/main/java']
                aidl.srcDirs = ['src/main/java']
                renderscript.srcDirs = ['src/main/java']
                res.srcDirs = ['src/main/res']
                assets.srcDirs = ['src/main/assets']
            }
    
        // Custom
         flavor3 {
              manifest.srcFile['src/another_manifest_path/AndroidManifest.xml']
              ...  
              ..other
            }
        }
    

    请让我知道它是否有效。

        2
  •  1
  •   ir2pid    6 年前

    好吧我找到了两种方法,

    1) 在appname/src文件夹下创建release/debug文件夹,并将不同的清单保存在那里。

    正如Vishva Dave所指出的 https://stackoverflow.com/a/29317682/8089770

    2) 在buildtypes of build中设置发布/调试清单。gradle,类似于Jeelan的建议,但针对构建类型,而非口味

    buildTypes {
            debug {
                jniDebuggable true
                debuggable true
                **manifest.srcFile['src/debug/AndroidManifest.xml']**
            }