This is an Android implementation of a blockchain using the BC data structures.
BCAndroid should be in the same parent directory as the following prerequisite projects;
BCJava
AliasJava
FinanceJava
JavaCommon
./gradlew build
When the soft keyboard is shown on-screen the user cannot scroll the the bottom of the dialog to get to the cardinputwidget, requiring the user to dismiss keyboard before tapping the cardinputwidget.
When the user creates an account they need to accept the legalese (Terms of Service, Privacy Policy, and Beta Test Agreement), then when they register with a provider they need to accept them again. Instead save the acceptance in BC and check this before asking them again.
The CreateAccountActivity and StripeDialog put everything on a single screen, consider breaking them up into individual fragments which can be traversed in steps.
Google can prompt the user to autofill their card details after they enter their CVC, but it does not autofill the CVC field, so the user has to enter the CVC twice.
When displaying the Stripe dialog the cardinputwidget (which is at the bottom) steals focus. User then has to scroll back up to read the description, accept legalese, and enter email, before entering their payment method.
The user was not given an error message when the CVC was not entered.
In the AccessActivity available keys are listed as the associated alias, but it is unclear that the user could tap on the alias to login. Instead the only obvious buttons are Import Keys and Create Account.
Users accept legalese when they create their account, and then need to accept them again when they register/subscribe.
Consider removing legalese from StripeDialog or the app should remember the user already accepted and not prompt them again.
StrictMode policy violation: android.os.strictmode.NonSdkApiUsedViolation: Landroid/view/ViewGroup;->makeOptionalFitsSystemWindows()V
at android.os.StrictMode.lambda$static$1(StrictMode.java:428)
at android.os.-$$Lambda$StrictMode$lu9ekkHJ2HMz0jd3F8K8MnhenxQ.accept(Unknown Source:2)
at java.lang.Class.getDeclaredMethodInternal(Native Method)
at java.lang.Class.getPublicMethodRecursive(Class.java:2075)
at java.lang.Class.getMethod(Class.java:2063)
at java.lang.Class.getMethod(Class.java:1690)
at android.support.v7.widget.Cb.b(Unknown Source:19)
at android.support.v7.app.x.u(Unknown Source:268)
at android.support.v7.app.x.w(Unknown Source:4)
at android.support.v7.app.x.c(Unknown Source:0)
at android.support.v7.app.m.setContentView(Unknown Source:4)
at com.aletheiaware.bc.android.ui.AccessActivity.onCreate(Unknown Source:16)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.