4

次の構造を持つライブラリ プロジェクトがあります。

    <activity android:name="com.comp.package.activities.A1">
        <intent-filter>
            <action android:name="android.intent.action.MAIN"/>
            <category android:name="android.intent.category.LAUNCHER"/>
        </intent-filter>
    </activity>
    <activity android:name="com.comp.package.activities.A2">
    </activity>
    <activity android:name="com.comp.package.activities.A3">
    </activity>
    <activity android:name="com.comp.package.activities.A4">
    </activity>

アプリ プロジェクトでは、マージされたマニフェストを次のようにします。

    <activity android:name="com.comp.package.activities.A2">
        <intent-filter>
            <action android:name="android.intent.action.MAIN"/>
            <category android:name="android.intent.category.LAUNCHER"/>
        </intent-filter>
    </activity>
    <activity android:name="com.comp.package.activities.A1">
    </activity>
    <activity android:name="com.comp.package.activities.A3">
    </activity>
    <activity android:name="com.comp.package.activities.A4">
    </activity>

マニフェストのマージ機能を使用してこれを達成することは可能ですか?

持とうとすると

    <activity android:name="com.comp.package.activities.A2">
        <intent-filter>
            <action android:name="android.intent.action.MAIN"/>
            <category android:name="android.intent.category.LAUNCHER"/>
        </intent-filter>
    </activity>

アプリ プロジェクトのベース マニフェスト ファイルで、次のエラーが発生します。

  Trying to merge incompatible /manifest/application/activity[@name=com.comp.package.activities.A2] element:
  <activity
      @android:name="com.comp.package.activities.A2">
  --    <intent-filter>
  --        <action
  --            @android:name="android.intent.action.MAIN">
   <activity
      @android:name="com.comp.package.activities.A2">
  ++</activity>
  ++(end reached)
4

1 に答える 1