package_rename_plus
Uma maneira extremamente rápida de configurar seu incrível projeto Flutter para produção.
Uma maneira extremamente rápida de configurar seu projeto Flutter de ponta para estar pronto para produção.
Texto original em inglês. Visite o GitHub para a versão atual.
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.
GitHub issues GitHub issues closed
Package Rename handles changing 37 fields across 19 files on 6 platforms so you can focus on your awesome project.
For more info see list of changed fields
dev_dependencies:
package_rename_plus: ^1.11.0
You can create configurations by adding package_rename_config key in:
pubspec.yaml filepackage_rename_config.yaml file at root of your project or a custom folder in the projectpackage_rename_config:
android:
app_name: # (String) The display name of the android app
package_name: # (String) The package name of the android app
override_old_package: # (Optional) (String) Use this to delete the old folder structure of MainActivity or to use the existing code with the new package name
lang: # (Optional) (String) The android development language {kotlin(default) or java}
ios:
app_name: # (String) The display name of the ios app
bundle_name: # (String) The bundle name of the ios app
override_old_package: # (String) Use this to replace the old bundle identifier with the new bundle identifier
package_name: # (String) The product bundle identifier of the ios app
linux:
app_name: # (String) The window title of the linux app
package_name: # (String) The application id of the linux app
exe_name: # (String) The executable name (binary name) of the linux app
macos:
app_name: # (String) The product name of the macos app
package_name: # (String) The product bundle identifier of the macos app
copyright_notice: # (String) The product copyright of the macos app
web:
app_name: # (String) The title of the web app and PWA
short_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 PWA
windows:
app_name: # (String) The window title & software name of the windows app
organization: # (String) The organization name (company name) of the windows app
copyright_notice: # (String) The legal copyright of the windows app
exe_name: # (String) The executable name (binary name) of the windows app
For full example click here
Execute the command as per your config location:
if config file exists in either pubspec.yaml or root path:
dart run package_rename_plus
OR
if config file exists in a custom folder:
dart run package_rename_plus --path="path/to/package_rename_config.yaml"
or
dart run package_rename_plus -p "path/to/package_rename_config.yaml"
Package Rename supports flavours. You can add flavour specific configurations by adding flavour_name in configuration key.
package_rename_config-flavour_name:
# ...
For full example click here
And then run the following command:
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"
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:
DEFAULT
rocks.outdatedguy.packageRenameExamplerocks.outdatedguy.packageRenameExample.RunnerTestsEXTENSIONS
rocks.outdatedguy.packageRenameExample.Share-Extensionrocks.outdatedguy.packageRenameExample.NotificationServiceExtensionHence, 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 ("").
- PRODUCT_BUNDLE_IDENTIFIER = rocks.outdatedguy.packageRenameExample.Share-Extension;
+ PRODUCT_BUNDLE_IDENTIFIER = "rocks.outdatedguy.packageRenameExample.Share-Extension";
Now you can deploy your production ready app to change the WORLD!