Last updated:
0 purchases
package rename
Package Rename #
A Blazingly Fast way to configure your Bleeding Edge flutter project to be production ready.
Package Rename handles changing 33 fields across 17 files on 6 platforms so you can focus on your awesome project.
For more info see list of changed fields
Getting started #
Add to Dependencies
dev_dependencies:
package_rename: ^1.7.1
copied to clipboard
Create configuration
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 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
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
copied to clipboard
For full example click here
Running Package Rename
Execute the command as per your config location:
if config file exists in either pubspec.yaml or root path:
dart run package_rename
copied to clipboard
OR
if config file exists in a custom folder:
dart run package_rename --path="path/to/package_rename_config.yaml"
copied to clipboard
or
dart run package_rename -p "path/to/package_rename_config.yaml"
copied to clipboard
Flavour Support #
Package Rename supports flavours. You can add flavour specific configurations by adding flavour_name in configuration key.
package_rename_config-flavour_name:
# ...
copied to clipboard
For full example click here
And then run the following command:
dart run package_rename --flavour=flavour_name
copied to clipboard
or
dart run package_rename -f flavour_name
copied to clipboard
With custom config file location:
dart run package_rename --flavour=flavour_name --path="path/to/package_rename_config.yaml"
copied to clipboard
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:
DEFAULT
rocks.outdatedguy.packageRenameExample
rocks.outdatedguy.packageRenameExample.RunnerTests
EXTENSIONS
rocks.outdatedguy.packageRenameExample.Share-Extension
rocks.outdatedguy.packageRenameExample.NotificationServiceExtension
blah blah blah...
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 ("").
- PRODUCT_BUNDLE_IDENTIFIER = rocks.outdatedguy.packageRenameExample.Share-Extension;
+ PRODUCT_BUNDLE_IDENTIFIER = "rocks.outdatedguy.packageRenameExample.Share-Extension";
copied to clipboard
And that's it! 🎉 #
Now you can deploy your production ready app to change the WORLD!
If you liked the package, then please give it a Like 👍🏼 and Star ⭐ #
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.