我有一个安卓库,我想设置autoBackUp
逻辑,以提供更好的用户体验。我知道它在Android M之后成为默认行为,我也想要处理以前的API但是继承BackupAgent。
这是我的图书馆AndroidManifest.xml
<manifest
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="mypackage">
<application
android:allowBackup="true" // feature 1
android:backupAgent=".mBackupAgent"/> // feature 2
</manifest>
这是我的测试应用AndroidManifest.xml
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.paypal.android.lib.riskcomponentsample" >
<application
android:allowBackup="false" // feature 1
android:backupAgent=".test" // feature 2
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
...
</manifest>
这些清单导致合并冲突,因为它们具有相同的属性。
由于它位于库范围内,我只能修改SDK中的AndroidManifest.xml
(低优先级)。我没有访问应用程序级别(高优先级)。我想在清单中指定属性,但是当merge logic发生时,如何在没有潜在冲突的情况下执行此操作?
例如,如果任何更高优先级的清单具有相同的属性,那么我将把属性赋予更高优先级的属性。但如果没有,那么我希望应用程序采用我的属性。