我必须维护比较大的android应用程序。当我进行更改并将其安装在设备上时,它会安装在以前的版本之上,使其不可用。同时,我希望安装两个版本(更改和未更改),以比较他们的行为。因此,对于更改版本,克隆代码库并更改 AndroidManifest.xml 中的包属性。但作为副作用,这会在处理布局 xml 文件时导致错误:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:cyberdyne="http://schemas.android.com/apk/res/com.cyberdyne.mobile"
android:background="@drawable/back_grad">
<TableRow android:paddingBottom="15dp">
<com.cyberdyne.mobile.EmptyByDefaultSpinner
^ error: No resource identifier found for attribute 'defaultLabel' in package com.cyberdyne.mobile'
android:layout_height="@dimen/spinner_height"
android:layout_width="fill_parent"
cyberdyne:defaultLabel="@string/labelRDCAccount"
style="@style/DefaultAppearancePlus"/>
</TableRow>
我读到其中的包xmlns:cyberdyne="http://schemas.android.com/apk/res/com.cyberdyne.mobile"
应该与 AndroidManifest.xml 中的相同,但我不想更改所有布局描述(有很多)。
有没有一种快速的方法可以在同一设备上安装多个应用程序变体,而无需对代码库进行大量更改?