美文网首页
Android 清单文件包名(package)和applicat

Android 清单文件包名(package)和applicat

作者: 一笑倾城Tan | 来源:发表于2017-10-11 20:12 被阅读101次

    1、清单文件配置的包名:是代码中每个java文件上方的显示的包名
    2、applicationId:表示的是应用的唯一ID标识,保证了应用的唯一性(其实就是相当于一个手机安装过含有这个ID的APP后就不能重复安装了),但是一般情况下是和清单文件中写的包名的值是一样的
    3、applicationIdSuffix:修改应用唯一ID标识。其实就是在applicationId加上后缀进行区分。只有这样把应用的唯一标识改了,就可以在手机中同时安装同一一个应用的上线版本和测试版本两个app了,否则不允许安装
    4、测试例子,在APP的gradle中修改

    例子一:手机安装一个APP,只是BaseUrl不同,一个是发布app,一个是测试app.未修改applicationId。通过代码:this.getPackageName()得到的包名没有改变
    build.gradle

    android {
        defaultConfig {
        applicationId "com.test.sample"
     }
      buildTypes {
        release {
       //id 根据你自己的需要设置是否可以同时在一个手机上运行多个自己的app。
       buildConfigField "String", "API_HOST", "发布时的baseUrl"
        ....
      }
      dev{
      //测试包,设置识别码(个人理解)
          buildConfigField "String", "API_HOST", "测试时的baseUrl"
         ...
       }
      }
      productFlavors{
           flavors_release{
             resValue("string", "strKey","releaseStrValue")
       }
    
      flavors_dev{
           resValue("string", "strKey","devStrValue")
      }
     }
     }
     dependencies {
     }
    

    例子二:手机可同时安装两个APP,一个是发布app,一个是测试app,修改了applicationId。通过代码:this.getPackageName()得到的包名发生了改变。
    修改applicationId两种方法:
    方法1:
    productFlavors{
    flavors_release{
    applicationId "com.test.sampleRelease"
    }
    flavors_dev{
    applicationId "com.test.sampleDev"
    }
    方法2:
    productFlavors{
    flavors_release{
    applicationIdSuffix ".release"
    }
    flavors_dev{
    applicationIdSuffix ".dev"
    }

    build.gradle

        android {
              defaultConfig {
                 applicationId "com.test.sample"
              }
                buildTypes {
                  release {
             //id 根据你自己的需要设置是否可以同时在一个手机上运行多个自己的app。
     
                 ....
            }
                 dev{
                 //测试包,设置识别码(个人理解)
     
                  ...
                }
              }
              productFlavors{
                    flavors_release{
                    applicationId "com.test.sampleRelease"
                }
    
            flavors_dev{
                    applicationId "com..test.sampleDev"
           }
        }
      }
            dependencies {
           }

    相关文章

      网友评论

          本文标题:Android 清单文件包名(package)和applicat

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