一般项目做到后期,在测试的时候,需要在测试版本和正式版本之间进行频繁的切换,怎么办呢?土豪的话可以考虑使用两台机器,同时测试,然而为了方便测试,节约成本,最好的办法当然是在同一台机器上安装不同的版本。
然而,原则上来说,两个APP同时安装,由于签名和包名的问题是不可以的,不过,万能的天道之下,只有你想不到的,没有做不到的,首先我们分析一下原因,1.签名、2包名。也就是说,只要解决了这两个问题我们就成功了一半。第一个自然好解决,debug和release我们分别指定不同的签名就行了。第二个怎么办呢?难道要复制一份代码,修改包名吗?这样岂不是显得太low?而且两个项目同时跟进维护容易出错。最重要的是显示不出逼格啊!这个时万能的gradle出来了(那谁,不要扔鞋子啊!…………)
1.找到build.gradle(Module: app)
找到BuildTypes中添加如下代码
代码语言:javascript复制buildTypes {
release {
applicationIdSuffix ".release"
resValue "string", "app_name", "@string/app_name_release"
// minifyEnabled false
// proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
debug {
applicationIdSuffix ".debug"
resValue "string", "app_name", "@string/app_name_debug"
}
}
2.找到strings.xml
添加代码
代码语言:javascript复制 <string name="app_name_release" Release版本</string
<string name="app_name_debug" Debug版本</string
3.找到AndroidManifest.xml
代码语言:javascript复制<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme"
<activity android:name=".MainActivity"
<intent-filter
<action android:name="android.intent.action.MAIN" /
<category android:name="android.intent.category.LAUNCHER" /
</intent-filter
</activity
</application
以上就是本文的全部内容,希望对大家的学习有所帮助。