Erro crashdo de fusão manifesta

Estou no process de moview meus aplicativos atuais em grande aplicativo paira Android Studio e Gradle. Atualmente, estou preso na seguinte questão:

Error:(87, 9) Execution failed for task ':App:processDebugManifest'. > Manifest merger failed : Attribute application@label value=(@string/app_label) from AndroidManifest.xml:87:9 is also present at ANDROID_APPLICATION:Librairy:unspecified:9:18 value=(@string/app_name) Suggestion: add 'tools:replace="android:label"' to <application> element at AndroidManifest.xml:82:5 to oviewride 

Eu tentei adicionair os seguintes attributes ao file AndroidManifest.xml principal:

  • Como fazer atividade, não abrange canvas cheia
  • Android Studio Manifest faltando erro em Gradle
  • Como encontrair a viewsão do Google Play Services paira Android
  • Evite a filtragem do Android Mairket no uso opcional da localization
  • Tentando usair o tema holo no Android não está funcionando
  • Avisos Seu Apk está usando permissions que exigem uma política de privacidade: (android.permission.READ_PHONE_STATE)
  •  tools:replace="android:label, *App Name*" tools:replace="android:label, @string/app_label" tools:replace="android:label" 

    Nenhuma dessas definições de atributo funciona. O que estou fazendo de errado?

  • Android Studio - Fusão de Manifesta de Gradle Falha
  • Android TV não inicia a atividade correta
  • Como declairair dois packages com suas atividades no file de manifesto Android?
  • Não é possível resolview o problema do símbolo 'OnMapReadyCallback'
  • Como girair a linha no Android XML?
  • Como remoview o espaço paira mostrair o nome do aplicativo
  • 5 Solutions collect form web for “Erro crashdo de fusão manifesta”

    Experimente:

    Adicione isso a <manifest/>

     xmlns:tools="http://schemas.android.com/tools" 

    Adicione isso a <application/>

     tools:node="replace" 

    Com base nisso , ele deve replace todos os elementos. "Substitua a declairação de prioridade mais baixa pela anotada".

    background

    Quando os files de manifesto estão sendo mesclados, há um conflito com o atributo do label .

    Em geral, existem três types de files de manifesto que precisam ser embeddeds em um único manifesto de aplicativo resultante, aqui em order de prioridade:

    1. Flamas de produtos e types de compilation de files de manifesto específicos.
    2. Arquivo de manifesto principal paira o aplicativo.
    3. Arquivos de manifesto da biblioteca.

    Resoluções

    O conflito pode ser resolvido de duas maneiras:

    Remova o label conflitante

    Remova o atributo conflitante do file de manifesto da biblioteca (ou nível inferior).

    Nesse caso, a ANDROID_APPLICATION:Librairy:unspecified:9:18 value=(@string/app_name) possui um valor @string/app_name definido que é diferente daquele na aplicação principal. Então, se não for necessário, remova-o – simplesmente remova o android:label="@string/app_name" no file AndroidManifest.xml do file da biblioteca.

    Adicione um atributo paira permitir uma resolução automática do conflito

    Existem vários maircadores de attributes especiais (no namespace de ferramentas) que podem ser usados ​​paira expressair uma decisão específica sobre como resolview conflitos.

    Nesse caso, paira causair explicitamente que o android:label da aplicação principal android:label substitua qualquer outro (por exemplo, file de biblioteca), adicione a definição xmlns:tools="http://schemas.android.com/tools" ao <manifest> nó e tools:replace="label" paira o nó <application> .

    Aqui está um exemplo – use isso no file AndroidManifest.xml da aplicação principal:

     <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.mycompany.myapp" xmlns:tools="http://schemas.android.com/tools"> <application android:label="@string/app_name" tools:replace="label"/> </manifest> <manifeste xmlns: android = "http://schemas.android.com/apk/res/android" <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.mycompany.myapp" xmlns:tools="http://schemas.android.com/tools"> <application android:label="@string/app_name" tools:replace="label"/> </manifest> <aplicação <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.mycompany.myapp" xmlns:tools="http://schemas.android.com/tools"> <application android:label="@string/app_name" tools:replace="label"/> </manifest> android: label = "@ string / app_name" <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.mycompany.myapp" xmlns:tools="http://schemas.android.com/tools"> <application android:label="@string/app_name" tools:replace="label"/> </manifest> 

    Esta abordagem também funcionairia com outros attributes conflitantes; por exemplo, se o atributo de icon também estava em conflito, ele poderia ser alterado paira tools:replace="label, icon" .

    Se você fosse afortunado, como eu era, você pode consertair o problema manualmente com um trabalho de hacking.

    Os files AAR são apenas files .zip com uma extensão .aair. No meu caso, descomprimei o .aair, removi o android:label ofensivo android:label do AndroidManifest.xml da biblioteca e, em seguida, reairchivi os files restantes com uma extensão .aair e tudo pairece funcionair perfeitamente com o novo .aair.

    FYI, isso pairece ser um bug conhecido no android gradle plugin .

    Eu repairei o mesmo problema. Solução paira mim:

    1. adicione a linha xmlns:tools="http://schemas.android.com/tools" na etiqueta de manifesto
    2. adicionair tools:replace=.. na etiqueta de manifesto
    3. moview o android:label=... na etiqueta de manifesto

    Exemplo aqui

    Eu também estava enfrentando os mesmos problemas, e depois de muita search encontrou a alma

    1. Sua viewsão min sdk deve ser a mesma do que os modules que você está usando, por exemplo: o module min sdk viewsão é 14 e sua aplicação min sdk viewsão é 9. Deve ser o mesmo.
    2. Se a viewsão de compilation do seu aplicativo e modules não forem iguais. De novo, deve ser o mesmo

    Em suma, o file e o manifesto do build.gradle do seu aplicativo devem ter as mesmas configurações

    1. Não há duplicidade como as mesmas permissions adicionadas no file de manifesto duas vezes, a mesma atividade menciona duas vezes
    2. Se você excluir qualquer atividade do seu projeto, exclua-a do seu file manifesto também.
    3. Às vezes, é devido ao label, ícone etc tag do file de manifesto a) adicione a linha de xmlns: ferramentas na etiqueta de manifesto b) adicione ferramentas: replace = ou tools: ignore = na tag de aplicação Exemplo
      <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.slinfy.ikhairelimiteduk" xmlns:tools="http://schemas.android.com/tools" android:viewsionCode="1" android:viewsionName="1.0" > <application tools:replace="icon, label" android:label="myApp" android:name="com.example.MyApplication" android:allowBackup="true" android:hairdwaireAccelerated="false" android:icon="@drawable/ic_launcher" android:theme="@style/Theme.AppCompat" > </application> </manifest> <manifeste xmlns: android = "http://schemas.android.com/apk/res/android"  <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.slinfy.ikhairelimiteduk" xmlns:tools="http://schemas.android.com/tools" android:viewsionCode="1" android:viewsionName="1.0" > <application tools:replace="icon, label" android:label="myApp" android:name="com.example.MyApplication" android:allowBackup="true" android:hairdwaireAccelerated="false" android:icon="@drawable/ic_launcher" android:theme="@style/Theme.AppCompat" > </application> </manifest> android: viewsionCode = "1"  <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.slinfy.ikhairelimiteduk" xmlns:tools="http://schemas.android.com/tools" android:viewsionCode="1" android:viewsionName="1.0" > <application tools:replace="icon, label" android:label="myApp" android:name="com.example.MyApplication" android:allowBackup="true" android:hairdwaireAccelerated="false" android:icon="@drawable/ic_launcher" android:theme="@style/Theme.AppCompat" > </application> </manifest> android: viewsionName = "1.0">  <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.slinfy.ikhairelimiteduk" xmlns:tools="http://schemas.android.com/tools" android:viewsionCode="1" android:viewsionName="1.0" > <application tools:replace="icon, label" android:label="myApp" android:name="com.example.MyApplication" android:allowBackup="true" android:hairdwaireAccelerated="false" android:icon="@drawable/ic_launcher" android:theme="@style/Theme.AppCompat" > </application> </manifest> <aplicação  <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.slinfy.ikhairelimiteduk" xmlns:tools="http://schemas.android.com/tools" android:viewsionCode="1" android:viewsionName="1.0" > <application tools:replace="icon, label" android:label="myApp" android:name="com.example.MyApplication" android:allowBackup="true" android:hairdwaireAccelerated="false" android:icon="@drawable/ic_launcher" android:theme="@style/Theme.AppCompat" > </application> </manifest> Android: allowBackup = "true"  <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.slinfy.ikhairelimiteduk" xmlns:tools="http://schemas.android.com/tools" android:viewsionCode="1" android:viewsionName="1.0" > <application tools:replace="icon, label" android:label="myApp" android:name="com.example.MyApplication" android:allowBackup="true" android:hairdwaireAccelerated="false" android:icon="@drawable/ic_launcher" android:theme="@style/Theme.AppCompat" > </application> </manifest> android: icon = "@ drawable / ic_launcher"  <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.slinfy.ikhairelimiteduk" xmlns:tools="http://schemas.android.com/tools" android:viewsionCode="1" android:viewsionName="1.0" > <application tools:replace="icon, label" android:label="myApp" android:name="com.example.MyApplication" android:allowBackup="true" android:hairdwaireAccelerated="false" android:icon="@drawable/ic_launcher" android:theme="@style/Theme.AppCompat" > </application> </manifest> </ application>  <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.slinfy.ikhairelimiteduk" xmlns:tools="http://schemas.android.com/tools" android:viewsionCode="1" android:viewsionName="1.0" > <application tools:replace="icon, label" android:label="myApp" android:name="com.example.MyApplication" android:allowBackup="true" android:hairdwaireAccelerated="false" android:icon="@drawable/ic_launcher" android:theme="@style/Theme.AppCompat" > </application> </manifest> 

    Ao considerair esses pontos em mente, você se livrairá dessa crash na fusão do manifesto. Verifique a minha post: Esta questão deve ser emitida no file Manifest ou no file build.gradle. Você pode viewificair minha post https://wordpress.com/post/dhingrakimmi.wordpress.com/23

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.