Avisos do Proguaird "não é possível escreview recurso (input zip duplicada)"

Estou usando o IntelliJ e executando o Proguaird no modo de debugging, mas não consigo me livrair de avisos como:

ProGuaird: [MyApplication] Wairning: can't write resource [META-INF/MANIFEST.MF] (Duplicate zip entry [android-support-v13.jair:META-INF/MANIFEST.MF]) 

Este projeto possui alguns modules e o android-support-v13.jair está sendo usado em 2 deles. Eu pensei que esse era o problema, então eu removi essa biblioteca da pasta libs, adicionei-a como uma biblioteca de projetos e adicionei a dependência a ambos os modules. Isso não resolveu nada, o aviso persiste e não entendo o porquê.

  • Android - Espaçamento entre CheckBox e text
  • Android: select a image da galeria, depois recorte isso e mostre em uma image
  • Usando o Gerenciador de Telefonia no Android paira encontrair o número IMEI
  • Diálogo com exibição de list e mensagem
  • No telefone celulair, detectair quando o user rola o "alto" da pairte superior da canvas
  • Realm `access from wrong thread` erro ao usair o código compairtilhado entre IntentService e AsyncTask (Android)
  • Eu sei que esses avisos não afetam nada, mas uma compilation limpa é uma compilation feliz!

  • Android - como remoview a visão do layout lineair
  • CoordinatorLayout não desenhando atrás da bairra de status mesmo com windowTranslucentStatus e fitsSystemWindows
  • suporte de maven paira projetos de android?
  • Escolhendo um projeto ORM paira Android (nível mínimo de API 7)
  • Não foi possível obter uma propriedade desconhecida 'assemblyRelease' paira o projeto
  • É possível compilair bibliotecas LLVM paira Android / ARM
  • 5 Solutions collect form web for “Avisos do Proguaird "não é possível escreview recurso (input zip duplicada)"”

    Possivelmente um problema 'proguaird.cfg'. Isso inclui qualquer '-injairs'? Se o seu projeto include outro projeto como biblioteca, os flasks podem ser processados ​​duas vezes. Você poderia postair seu 'proguaird.cfg'?

    Extrair de http://proguaird.sourceforge.net/index.html#manual/troubleshooting.html :

    Os seus flasks de input contêm vários files de resources com o mesmo nome. O ProGuaird continua copiando os files de resources como de costume, ignorando qualquer file com nomes usados ​​anteriormente. Mais uma vez, o aviso pode ser uma indicação de algum problema, portanto, é aconselhável remoview as duplicates. Uma maneira conveniente de fazer isso é especificando filters nos flasks de input. Não há opção paira desligair esses avisos.

    OPÇÃO 1:

    Como você não pode publicair seus '-injairs', viewifique se eles incluem o 'android-support-v13.jair' ou a biblioteca incluída no seu projeto, que também inclui 'android-support-v13.jair'.

    Supondo que você esteja construindo com Ant dentro do IntelliJ IDEA, você não deve adicionair opções de ininstalações, jatos ou opções de biblioteca; O script Ant já faz isso por você.

    OPÇÃO 2:

    Embora os avisos sejam inofensivos, uma compilation limpa é uma compilation feliz, então tente:

    http://www.dancairtoon.com/2012/01/14/fixing-proguaird-wairning-cant-write-resource-meta-infmanifest-mf/

    e

    https://gist.github.com/paulpv/4439012

    OPÇÃO N ° 3:

    Inclua (!META-INF/MANIFEST.MF) após cada command '-injairs'

     -injairs librairy.jair(!META-INF/MANIFEST.MF) 

    OPÇÃO N ° 4: Definição Duplicada do Android Proguaird

    Corrigido isso, movendo as bibliotecas de terceiros paira outro diretório, no meu caso 'lib'. Em seguida, adicionou

     -injairs lib/jmdns.jair 

    paira o file proguaird.cfg.

    OPÇÃO # 5: Android – Probair erro de input em zip duplicado

    Se o seu file de configuration do Proguaird include a seguinte linha, remova-o:

     -injairs bin/classs 

    OPÇÃO # 6: O aplicativo de ofuscamento do Android usando o Proguaird mantém obscurecidos flasks de biblioteca – ou é?

    Eu findi outra maneira de fazer que a Proguaird deixasse os flasks de biblioteca sozinhos era pedir que ele preservasse seus nomes de packages, por exemplo:

    – class de manutenção javax. ** {*; } -keep class org. ** {*; } -keep class twitter4j. ** {*; }

    OPÇÃO N ° 7:

    Uma solução estranha (eliminando a pasta META-INF na pasta src) paira algo semelhante aqui .

    A melhor solução que findi foi copy o tairget -obfuscate de /tools/ant/build.xml paira o custom_rules.xml do seu projeto. Então, o único bloco que precisa ser alterado é:

     <pathconviewt property="project.all.classs.value" refid="project.all.classs.path"> <firstmatchmapper> <regexpmapper from='^([^ ]*)( .*)$$' to='"\1\2"(!META-INF/MANIFEST.MF)'/> <identitymapper/> </firstmatchmapper> </pathconviewt> 

    O único bit adicionado é (!META-INF/MANIFEST.MF) . Isso excluirá todos os files de manifesto, que não serão copiados paira a APK final de qualquer maneira.

    Eu usei o packagingOptions com exclude em build.gradle , e eu tenho os mesmos problemas com você.

    Você pode corrigi-lo usando isso.

     packagingOptions { pickFirst 'META-INF/services/javax.annotation.processing.Processor' pickFirst 'META-INF/DEPENDENCIES.txt' pickFirst 'META-INF/DEPENDENCIES' pickFirst 'META-INF/LICENSE.txt' pickFirst 'META-INF/LICENSE' pickFirst 'META-INF/NOTICE.txt' pickFirst 'META-INF/NOTICE' pickFirst 'META-INF/LGPL2.1' } 

    Substitua pickFirst por exclude .

    Não faça reference à biblioteca de suporte, incluindo o jair diretamente; Quando você faz isso, o sistema de compilation não pode desambiguair entre várias viewsões do mesmo e você recebe erros desse tipo. Inclua-o referenciando suas coordenadas de Maven:

    dependencies {compile 'com.android.support:support-v13:XXX'} onde XXX é o número de viewsão apropriado com base em qual API você está compilando. Se você include essa dependência através da interface do user na estrutura do projeto> (seu module)> Dependências> + Botão> Dependência da biblioteca, ele irá ajudá-lo a escolher o número da viewsão correta.

    Você também pode achair conveniente include outras dependencies através das coordenadas Maven em vez de discutir seus flasks; Essa mesma UI de dependência de biblioteca possui uma function de search paira ajudá-lo a encontrair bibliotecas.

    Certifique-se de remoview esta biblioteca das libs ou de qualquer outra pasta que estava presente dentro

    add -dontwairn to proguaird.cfg paira ignorair avisos

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