Orientação gerada a partir de informações públicas. Apenas para referência.
package_rename_plus é uma ferramenta de alto desempenho projetada para simplificar o processo de configuração de projetos Flutter para produção. Permite a renomeação rápida de identificadores de pacotes, nomes de aplicativos e ativos relacionados em múltiplas plataformas, incluindo Android, iOS, macOS, Windows e Linux. Ao automatizar as atualizações de configuração, reduz erros manuais e acelera a preparação para implantação. Ideal para desenvolvedores que buscam manter estruturas de projeto limpas e consistentes durante escalonamento ou rebranding.
Casos de uso
Renomeando aplicativos Flutter para rebranding
Preparando aplicativos para implantação em produção
Automatizando alterações no identificador de pacote
Atualizações de configuração multiplataforma
Simplificando pipelines de CI/CD
Principais recursos
Execução rápida
Suporte multiplataforma
Atualizações automáticas de ativos
Gerenciamento seguro de configuração
Integração de linha de comando
Indicado para
Desenvolvedores Flutter
equipes de rebranding do aplicativo
engenheiro de automação CI/CD
Mantenedores de projetos em grande escala
engenheiros de DevOps
Considerações
Requer backup cuidadoso antes do uso
Pode entrar em conflito com configurações personalizadas
Não adequado para alterações pontuais
Limitado à renomeação de nível de pacote
Depende da estrutura correta do projeto
README original
Snapshot do README original do repositório-fonte vinculado. Consulte o repositório para o conteúdo mais recente.
Package Rename Plus
This a fork repository from official package_rename using different approach to replace the configuration.
Fixed ios issue about replace bundle identifier with or without extension targets.
Removed logger dependency that can be solved using debugPrint only to minimize dependency to others packages/plugins.
A Blazingly Fast way to configure your Bleeding Edge flutter project to be production ready.
Package Rename handles changing 37 fields across 19 files on 6 platforms so you can focus on your awesome project.
You can create configurations by adding package_rename_config key in:
Root pubspec.yaml file
package_rename_config.yaml file at root of your project or a custom folder in the project
Usage
Adding Platform Specific Configurations
package_rename_config:android:app_name:# (String) The display name of the android apppackage_name:# (String) The package name of the android appoverride_old_package:# (Optional) (String) Use this to delete the old folder structure of MainActivity or to use the existing code with the new package namelang:# (Optional) (String) The android development language {kotlin(default) or java}ios:app_name:# (String) The display name of the ios appbundle_name:# (String) The bundle name of the ios appoverride_old_package:# (String) Use this to replace the old bundle identifier with the new bundle identifierpackage_name:# (String) The product bundle identifier of the ios applinux:app_name:# (String) The window title of the linux apppackage_name:# (String) The application id of the linux appexe_name:# (String) The executable name (binary name) of the linux appmacos:app_name:# (String) The product name of the macos apppackage_name:# (String) The product bundle identifier of the macos appcopyright_notice:# (String) The product copyright of the macos appweb:app_name:# (String) The title of the web app and PWAshort_app_name:# (String) The short display name of the PWA (Optional, defaults to app_name if not set)description:# (String) The description of the web app and PWAwindows:app_name:# (String) The window title & software name of the windows apporganization:# (String) The organization name (company name) of the windows appcopyright_notice:# (String) The legal copyright of the windows appexe_name:# (String) The executable name (binary name) of the windows app
dart run package_rename_plus --flavour=flavour_name
or
dart run package_rename_plus -f flavour_name
With custom config file location:
dart run package_rename_plus --flavour=flavour_name --path="path/to/package_rename_config.yaml"
Known Issues
iOS and macOS issues with PRODUCT_BUNDLE_IDENTIFIER:
The PRODUCT_BUNDLE_IDENTIFIER's in ios/Runner.xcodeproj/project.pbxproj and macos/Runner.xcodeproj/project.pbxproj have different values for different targets. Like, in my case:
Hence, to properly change the PRODUCT_BUNDLE_IDENTIFIER without removing the Extension name, make sure all PRODUCT_BUNDLE_IDENTIFIER's except the DEFAULT ones are enclosed in double quotes ("").