Mainly involves using a network parameter rather than a separate build for testnet and mainnet. This network object is also now the source of the SAPLING_ACTIVATION_HEIGHT, which varies by network. The other major change is the way wallet initialization works, particularly around viewing keys. Under the hood, this involves a database migration so it is worth testing the upgrade path.
This allows the app to run alongside the play store version for internal testing within the wallet team. This proved to be super useful so we formalized it into its own build with a separate icon and app name.
which automatically handles some of the more complex state management. Without this change, the recyclerview would lose its scroll position after viewing tx details. Now it handles it perfectly due to setting transactionAdapter.stateRestorationPolicy =
RecyclerView.Adapter.StateRestorationPolicy.PREVENT_WHEN_EMPTY
Addresses https://github.com/zcash/zcash-android-wallet/issues/143 by placing everything behind a user setting that can be enabled in the future by users who want to continue helping us improve the user experience. For the most part, this will just be turned on for internal company releases in order to continue learning and improving the app.
- Allow tiny transaction amounts and improve display
- show toAddress and memo when we know it
- Bugfix: self transactions are not duplicated
- Turned Developer logs back on and cleaned up output a bit
Dagger Android is overly complex and confusing and Google admitted that they need to change it and simply its use. In the meantime, it is easier to just remove it and setup dagger the old way.