时间:2020-12-19 10:10:07 | 栏目:Android代码 | 点击:次
一般项目做到后期,在测试的时候,需要在测试版本和正式版本之间进行频繁的切换,怎么办呢?土豪的话可以考虑使用两台机器,同时测试,然而为了方便测试,节约成本,最好的办法当然是在同一台机器上安装不同的版本。
然而,原则上来说,两个APP同时安装,由于签名和包名的问题是不可以的,不过,万能的天道之下,只有你想不到的,没有做不到的,首先我们分析一下原因,1.签名、2包名。也就是说,只要解决了这两个问题我们就成功了一半。第一个自然好解决,debug和release我们分别指定不同的签名就行了。第二个怎么办呢?难道要复制一份代码,修改包名吗?这样岂不是显得太low?而且两个项目同时跟进维护容易出错。最重要的是显示不出逼格啊!这个时万能的gradle出来了(那谁,不要扔鞋子啊!…………)
1.找到build.gradle(Module: app)
找到BuildTypes中添加如下代码
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
添加代码
<string name="app_name_release">Release版本</string> <string name="app_name_debug">Debug版本</string>
3.找到AndroidManifest.xml
<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>