BREAKING_CHANGE:DBEncryption from rudder_plugin_interface has been replaced with RudderDBEncryption from the rudder_plugin_db_encryption
Separated the DB Encryption feature into a separate plugin.
Added a new DBEncryptionInterface in the rudder_plugin_interface which was actually implemented by the rudder_plugin_db_encryption.
Made iOS Modules of Appcenter, Appsflyer, Firebase Flutter Device Modes as static_frameworks to make them support for linking either dynamically and statically.
Zetetic Dependencies on the Android platform need not be added manually now as they come by default with the plugin.
RudderDatabaseEncryption pod need not be added manually now as it comes default with the plugin.
Added Proguard rules to the Sample App to support Proguard Full Mode.
The DBEncryption feature can be enabled by following the below code snippet:
## Type of change
- [ ] Bug fix (non-breaking change that fixes an issue)
- [x] New feature (non-breaking change that adds functionality)
- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
## Checklists
### Development
- [x] Lint rules pass locally
- [ ] The code changed/added as part of this pull request has been covered with tests
- [x] All tests related to the changed code pass in development
### Code review
- [x] This pull request has a descriptive title and information useful to a reviewer. There may be a screenshot or screencast attached
- [x] "Ready for review" label attached to the PR and reviewers mentioned in a comment
- [ ] Changes have been reviewed by at least one other engineer
- [x] Issue from task tracker has a link to this pull request
Description of the change
DBEncryption
fromrudder_plugin_interface
has been replaced withRudderDBEncryption
from therudder_plugin_db_encryption
static_frameworks
to make them support for linking either dynamically and statically.The DBEncryption feature can be enabled by following the below code snippet:
RudderConfigBuilder builder = RudderConfigBuilder(); builder ..withDataPlaneUrl("DATA_PLANE_URL") ..withMobileConfig(mc) ..withLogLevel(RudderLogger.VERBOSE); rudderClient.initialize("WRITE_KEY", config: builder.build(), options: null);