Do Eclipse ao Android Studio: Por que o proguard.cfg é usado ao NÃO criar o Release?
Então, eu estou tentando migrar o desenvolvimento de um aplicativo com vários projetos (projetos eclipse) para o Android Studio (v1.1).
A importação via Arquivo> Importar Projeto foi realmente fácil e ocorreu sem incidentes.
No entanto, quando experimentei o projeto Make / Rebuild, encontrei inúmeras surpresas. O primeiro, não relacionado ao Proguard, tinha a ver com a codificação do arquivo de origem (originalmente no Windows-1252), mas rapidamente encontrei uma solução usando esseWindows-1252> Recarregar> UTF-8> Converter responda.
Em seguida, "erro: não é possível encontrar a classe de símbolo" para umcom.comp.mod.X
classe minha. Em seguida, resolvi-o acessando o módulo (módulo Android Studio, anteriormente um projeto Eclipse) que contém essa classe e adicionado ao seuproguard.cfg Os seguintes:
-keep public class com.comp.mod.X
O que me deixou com um "erro: não é possível encontrar a variável de símbolo" para uma const BB definida na classe mencionada acima. Eu resolvi isso adicionando ao mesmoproguard.cfg Os seguintes:
-keepclassmembers class com.comp.mod.X {
public static final boolean BB;
}
Isso me deixou com apenas um "erro: não é possível encontrar o método de símbolo getPreferenceX ()". Eu resolvo isso adicionando ao mesmo-keepclassmembers esse método, para que o acima agora pareça:
-keepclassmembers class com.comp.mod.X {
public static final boolean BB;
public static java.lang.String getPreferenceX();
}
Eu pensei que tinha terminado, mas, para meu desespero, quando tentei reconstruir o projeto, recebi vários erros adicionais de outros módulos do projeto, todos do tipo "erro: não é possível encontrar a classe / variável / método de símbolos" e outros relacionados para algunsproguard.cfg.
Eu poderia ter continuado analisando os arquivos proguard.cfg para cada módulo, mas neste momento estou começando a suspeitar que estou fazendo algo fundamentalmente errado, porque esses arquivos proguard.cfg funcionam perfeitamente no Eclipse. Assim,
Por que, de repente, eles não são mais bons para o Android Studio?E seO ProGuard é executado apenas quando você cria seu aplicativo noliberação modo, por que a versão do Android Studio se queixa de "não é possível encontrar o símbolo" devido à ofuscação de Proguard?o que estou perdendo?
Nota: eu tenhonão tentou "Gerar APK assinado". Tudo o que faço é "Reconstruir projeto".