美文网首页
(笔记)Android Gradle applicationId

(笔记)Android Gradle applicationId

作者: ChanZeeBm | 来源:发表于2017-08-23 16:18 被阅读0次

    前言:在Eclipse时代是没有applicationId可言的,只有packageName,在Android Gradle构建系统出现了applicationId
    简单区分:packageName在代码内使用;applicationId是程序唯一标识符。

    applicationId的引用

    1. 在AndroidManifest里面可以直接用占位符引用
    android:authorities="${applicationId}.provider"
    
    1. 在res的xml不能用占位符方式引用(或者谁知道可以的分享一下方法)
    2. 在gradle引用:只能在各个级别里面引用,不能跨界引用。
      如:
       defaultConfig {
            applicationId "com.king.zen"
        }
    
        productFlavors {
            //RX
            polaris {
                buildConfigField("String", "authority", "\"${applicationId}.provider\"")
            }
    
    

    这样写是错误的,build完毕以后BuildConfig.java会是这样的:

    public static final String authority = "null.provider";
    

    正确写法是:

     defaultConfig {
            applicationId "com.king.zen"
        }
    
        productFlavors {
            //RX
            polaris {
                applicationId "com.king.zen.polaris"
                buildConfigField("String", "authority", "\"${applicationId}.provider\"")
            }
    

    BuildConfig.java:

    public static final String authority = "com.king.zen.polaris.provider";
    

    相关文章

      网友评论

          本文标题:(笔记)Android Gradle applicationId

          本文链接:https://www.haomeiwen.com/subject/mwjddxtx.html