Sjors / nthkey-ios

Your iOs device in a Bitcoin multi-sig
https://nthkey.com
MIT License
17 stars 7 forks source link

Minor issues to fix before AppStore release #49

Closed w-i-n-s closed 3 years ago

w-i-n-s commented 3 years ago

Purchase flow need loaders between screens and additional notifications which allow user to understand what happen (and debug purpose) IMG_7336 ~- [ ] Loader in 2-3~ ~- [ ] Loader in 3-4~ ~- [ ] Implement Status view for display purchasePublisher value~ ~- [ ] Check additional SKPaymentTransactionObserver methods if it can help in UX improvements~ [edit] Doen't make sense after 0c9ed453b193eee46084dd2604b3cb53620ba0ec


Originally posted by @Sjors in https://github.com/Sjors/nthkey-ios/issues/44#issuecomment-849494464

I was able to make a purchase using the sandbox user. However the "Use real Bitcoin (mainnet)" dialog doesn't close when the purchase is complete.

I also suggest making the "Subscribe Now" button grey while the purchase is in progress.

I see, but a month is not 30 days, so that bit has to be more accurate. Right, so we just check if: current time > expirationDateFromResponse (stored in UserDefaults)

So we do something like this?

  1. When user makes a purchase, store the expiration date
  2. When app wakes up check if time > expiration date
  3. When time > experitation date, fetch (???) from Apple: a) update expiration date (??) b) turn off subscription if it wasn't renewed (if connection to Apple fails, just ignore and try later) Снимок экрана 2021-06-03 в 21 39 41

Only minor suggestion (can wait): when the purchase (or restore) is complete, jump to the mainnet tab. If it's easier: do this for both the Announce and Import sections.

  • [x] mark requested tab after purchase 1cc14fb0378f6e7b0f25ac221101160de9ebf97c
Sjors commented 3 years ago

When the user does not have a subscription and they airdrop (or open via files) a transaction, make sure the sign button is also disabled and the user is prompted to subscribe.

w-i-n-s commented 3 years ago

When the user does not have a subscription and they airdrop (or open via files) a transaction, make sure the sign button is also disabled and the user is prompted to subscribe.

@Sjors Based on the current implementation user should have an active subscription to load or scan mainnet's PSBT.

Снимок экрана 2021-06-04 в 18 45 59

So, we overview the next case: user open import dialog and after that the subscription isn't active anymore. User can load psbt but the app should not allow to sign without active subscription. Just clearify the case.

Снимок экрана 2021-06-04 в 18 50 16
Sjors commented 3 years ago

When there is no subscription, it should not process or show the PSBT (not a high priority issue though).