331498a97c
- clarify that this is maintained by ECC - delete duplicate sentence about the wallet threat model (kept in the disclaimers, deleted in the intro). - delete "Traffic analysis, like in other cryptocurrency wallets, can leak some privacy of the user." --we agreed that we didn't want to give off the impression that our wallet is worse than other apps, when it is actually better for privacy. - delete "We recommend backing up your seed and using this with amounts of funds..." --we reiterate that this is not a product, and Taylor has looked at our code enough to feel confident about our wallets not losing funds. - delete "We aim to make it as beautiful as it is useful. Internally, we will continue to extensively use it to innovate and interate on everything from [protocol changes](https://electriccoin.co/blog/introducing-heartwood/) to [lottie animations](https://lottiefiles.com/popular). Of course, Zcash has a strong history of being open-source, even when it's difficult. It would be easier to keep this internal-only so that we could fill it with crash-reporting and feedback tools but, instead, we decided to disable those things and make it available as a community resource." -- this takes away from the point that this is only for dogfooding, and that this is not a product. |
||
---|---|---|
.github/ISSUE_TEMPLATE | ||
app | ||
buildSrc | ||
feedback | ||
gradle/wrapper | ||
lockbox | ||
mnemonic | ||
qrecycler | ||
.gitignore | ||
CHANGELOG.md | ||
LICENSE | ||
README.md | ||
build.gradle | ||
gradle.properties | ||
gradlew | ||
gradlew.bat | ||
settings.gradle |
README.md
zcash-android-wallet
An Android wallet using the Zcash Android SDK that is maintained by ECC developers.
Motivation
Dogfooding - transitive verb - is the practice of an organization using its own product. This app was created to help us learn.
Please take note: the wallet is not an official product by ECC, but rather a tool for learning about our libraries that it is built on. This means that we do not have robust infrasturcture or user support for this application. We open sourced it as a resource to make wallet development easier for the Zcash ecosystem.
Setup
Requirements
- the code
- Android Studio and/or adb with a phone or emulator
- anything else TBD
- Open Android Studio and setup an emulator or connect your device
- Clone the repo
- Open the project and press play. It should just work.
To build from the command line, setup ADB and connect your device. Then simply run this and it will both build and install the app:
cd /path/to/zcash-android-wallet
./gradlew
Disclaimers
There are some known areas for improvement:
- This app so it is mainly intended for learning and improving the related libraries that it uses. There may be bugs.
- This wallet currently only supports receiving at shielded addresses, which makes it incompatible with wallets that do not support sending to shielded addresses.
- The wallet requires a trust in the server to display accurate transaction information.
- This app has been developed and run exclusively on
mainnet
it might not work ontestnet
.
See the Wallet App Threat Model for more information about the security and privacy limitations of the wallet.
If you'd like to sign up to help us test, reach out on discord and let us know! We're always happy to get feedback!
License
MIT