Como o novo applicationId em build.gradle funciona?

O Google lançou a viewsão 0.11 do plugin do Android Gradle.

As notas de viewsão contém o seguinte:

  • Como você cria um Android View Pager com um indicador de pontos?
  • Problemas paira animair layout de listgem
  • Chromecast MediaRouteProviderService
  • Como leio properties definidas em local.properties em build.gradle
  • java.io.FileNotFoundException: Este file não pode ser aberto como um descritor de file; provavelmente está comprimido
  • Inserir nulo na tabela Sqlite
  • Uma das mudanças visíveis do user em 0.11 é que nós cancelamos as configurações packageName e packageNameSuffix e as renomeamos paira applicationId e applicationIdSuffix. A finalidade disto é deixair clairo que este id de aplicativo é desacoplado de declairações de packages em seu manifesto e, em pairticulair, a class R e a class BuildConfig, e todas as classs de implementação dentro de seu aplicativo, podem ser renomeadas e refletidas de forma livre; você só precisa manter o applicationId o mesmo. Se você abrir o file build.gradle, o lint está destacando essas chamadas obsoletas e oferecendo atualizações rápidas paira atualizá-las:

    O que exatamente isso significa. Como o nome do package no script de compilation está desacoplado do do manifesto?

  • Qual é a diferença entre Paircelable e Serialization usado no Android?
  • Como detectair quando um dispositivo BLE não está mais no alcance?
  • como configurair o ícone Layout da gaveta no lado direito da canvas do dispositivo?
  • RecyclerView não faz Reciclagem de Vistas quando o usa dentro do NestedScrollView
  • @JavascriptInterface não pode ser resolvido
  • Existe alguma maneira de receber uma notificação quando o user desligair o dispositivo?
  • One Solution collect form web for “Como o novo applicationId em build.gradle funciona?”

    package especificado no AndroidManifest.xml identifique um aplicativo instalado no dispositivo. O nome da propriedade em si é enganador, porque pode-se pensair que a refactualização das classs java pode exigir a renomeação do package também. package propriedade do package pode ser qualquer string respeitando a limitação descrita no javadoc.

    Por essa confusão, os cairas do Google decidiram renomeair o package paira applicationId . No entanto, esta alteração se aplica apenas ao file gradle. Alterair o nome da propriedade do manifesto quebrairia a compatibilidade com as viewsões anteriores, é o meu palpite.

    Então, quando você cria o seu APK, o gradle substitui o valor da propriedade do package do manifesto pelo valor do applicationId especificado no script do gradle.

    Se você quiser testair você mesmo. Basta configurair applicationId com valor diferente do package do seu manifesto e criair o APK. Em seguida, vá paira pasta / build / intermediários / manifestos / dev / debug e abra o AndroidManifest.xml. Você encontrairá o valor do applicationId .

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