onflow / developer-grants

Grants for developers that contribute to the broader developer ecosystem
Apache License 2.0
50 stars 18 forks source link

FCL Android SDK #21

Closed lmcmz closed 1 year ago

lmcmz commented 2 years ago

FCL Android SDK

Grant category

Developer service

Description

Outblock Team will build a SDK for FCL SDK for Android.

Problem statement

Proposed solution

Impact

Milestones and funding

Milestone Deliverables Timeline Risks FLOW requested
1 - FCL Config Support the latest fcl config in the dictionary 0.5 weeks - -
2 - Authn Support Authn services which will get user address and list of service, and the webview will cache the login cookie 1 weeks - -
3 - Authz Support Authz services which allow dApp to request wallet provider to sign transaction 2 weeks - -
4 - Utilize Wrapper for flow-jvm, let the dapp use more fcl-friendly API to query the on chain data ~ 1 weeks - -
5 - Proving Account Proving Ownership of a Flow Account ~ 2 weeks - -
6 - Sign Message Support sign message service ~ 1 weeks wallet provider might not returning sign message service -
7 - On going maintenance Help developer to resolve their issue while they are using the SDK ~ 1 weeks - -

Team

Name Role Bio Contact
John Android Engineer Senior android developer on Lilico team. Built million downloads app as a Independent developer, worked on IBM, Alibaba, Keep before john@outblock.io
Hao Full stack Engineer Founder of outblock, the core developer of lilico wallet. Built flow-swift, fcl-swift SDK. hao@outblock.io

Milestone completion

srinjoyc commented 2 years ago

Hi @lmcmz and @john990,

Thanks for the proposal! We have some small questions/suggested changes to the scope of the milestones:

  1. Will Authz functionality include pre-authz as well?
  2. Will doing wallet discovery on android for existing supported wallets on your phone be in scope? We can help provide direction/scope/resources here, but something we should discuss.
  3. We'd like to add a sample app/harness for the SDK (similar to the harness we use for FCL) to easily see and test out the functionality of the SDK.
  4. Similar to the iOS ticket (#20 ), we'd request that milestone 7 (maintenance) involve a period of conformance with the upcoming FCL specification. We don't expect too many changes but wanted to flag that it may come up.
  5. I also presume that any changes required to the existing JVM SDK required to facilitate this functionality would also be in scope?

Lastly, as an action item, would you be able to edit your requested FLOW amounts in USD instead? If you prefer, you can also leave it blank and we can provide suggested amounts. We are going through a small process change and believe it'll be much easier to discuss in terms of USD although the payout will be in FLOW based on a 30-day average token price.

If you're good with all this, leave a reply and we can move forward in the process!

lmcmz commented 2 years ago

Hi @srinjoyc

  1. Yes, it will work with pre-authz.
  2. For now, there is no such discovery UI in native end, we wanna build one, happy to do so.
  3. Yeah, there will be a demo app along with the SDK with all the list of functions example code and behaviour.
  4. Happy to keep a standard among all SDKs.
  5. That's correct, if we found any changes need to be made in FLOW JVM SDK, we will create PRs for it.
  6. Similar to Flow iOS SDK, we also think of integrate wallet connect v2 in this SDK, so it will provider deep link ability. Let me know what your thoughts on this.

I will leave the amount in blank then. 😗

srinjoyc commented 2 years ago

Here is what we would suggest for the milestones:

Milestone Deliverables Timeline Risks USD Suggested
1 - FCL Config Support the latest fcl config in the dictionary 0.5 weeks - 2,000
2 - Authn Support Authn services which will get user address and list of service, and the webview will cache the login cookie 1 weeks - 4,000
3 - Authz Support Authz services which allow dApp to request wallet provider to sign transaction 2 weeks - 8,000
4 - Utilize Wrapper for flow-jvm, let the dapp use more fcl-friendly API to query the on chain data ~ 1 weeks - 4,000
5 - Proving Account Proving Ownership of a Flow Account ~ 2 weeks - 8,000
6 - Sign Message Support sign message service ~ 1 weeks wallet provider might not returning sign message service 4,000
8 - Wallet Connect V2 MVP support Deeplinking, Discovery ~ 4 weeks Time, V2 Support, FCL Spec 16,000
7 - Maintenance Resolve bugs, issues and maintain FCL spec compliance ~ 4 month - 16,000

Total USD Suggested: $62,000

Let us know if this looks good and we can have it approved!

lmcmz commented 2 years ago

Looks good ! 🫡

image