Giter VIP home page Giter VIP logo

authgear-sdk-xamarin's People

Contributors

andychow326 avatar carmenlau avatar fungc-io avatar louischan-oursky avatar roxk avatar stanleylhs avatar tung2744 avatar

Stargazers

 avatar

authgear-sdk-xamarin's Issues

SDK review

  • The Info of ServerException should be of any type, not a string.
  • PromptOptions and PromptOption are the same; Keep PromptOption (the one without the s) only
  • WechatRedirectUri of PromoteOptions can be removed
  • WechatRedirectUri of AuthorizeOptions can be removed
  • Configure should be named ConfigureAsync, if we follow naming convention.
  • SetOidcCodeVerifier and GetOidcCodeVerifier of IContainerStorage can be removed. The rationale is that a VerifierHolder can simply be passed via argument.
  • The button disabled state in the demo app should be as accurate as possible. See https://github.com/authgear/authgear-sdk-flutter/blob/main/example/lib/main.dart#L377

Hide all DeviceInfo*

These should have been internal in the first place.

  • Also fix namespace (right now it's in sub folder but namespace is still root namespace)

Request for adding UWP support

FormX is experimenting with WinUI/Uno and needs to use authgear with UWP.

  • Make it compile and output UWP lib
  • Add .uwp.cs to all files which have .android/ios.cs file extensions
  • Can ignore biometrics for the moment

Project setup

  • sdk library
  • xamarin form app sample
  • test in android
  • test in ios

SDK Support MAUI

Migrate Xamarin to a newest technology: MAUI
Create nuget and a demo app

Remaining SDK APIs

  • anonymous user
  • promote anonymous user
  • reauthenticate
  • openUrl
    • make sure can resolve the task when going back from web view
  • fetch user info
  • refresh idtoken
  • transient token storage

Add dotnet test in CI

  • Oidc to query param
  • base64
  • code verifier
  • exception Handled by json serializer
  • jwt parse
  • json enum converter

Refactor http client usage

  • Reuse http client as per official recommendation (for connection pooling)
  • Use authorization header value

Description of BiometricAccessConstraint[ios/Android] are required for API References

https://authgear.github.io/authgear-sdk-xamarin/api/Authgear.Xamarin.BiometricAccessConstraintAndroid.html
https://authgear.github.io/authgear-sdk-xamarin/api/Authgear.Xamarin.BiometricAccessConstraintIos.html

Better add something like:

The 3 settings corresponding to iOS doc at https://developer.apple.com/documentation/security/secaccesscontrolcreateflags/1392879-userpresence, which meant
* Any enrolled fingers, or Face ID
* Only the current enrolled finger, or face ID
* Biometric or passcode.

Biometric

  • Enable
  • Disable
  • IsSupported
  • Authenticate
  • Fix not using OauthException for OauthRepo

discrepancy in BiometricOptionsAndroid with other SDKs

public class BiometricOptionsAndroid
{
public string? Title { get; set; }
public string? Subtitle { get; set; }
public string? Description { get; set; }
public string? NegativeButtonText { get; set; }
public BiometricAccessConstraintAndroid? AccessConstraint { get; set; }
public bool InvalidatedByBiometricEnrollment { get; set; }
}

All options in android biometric should be required.

c.f.
https://github.com/authgear/authgear-sdk-js/blob/523f4e3a57e5b89600ce24a616f32c279dd8dca6/packages/authgear-react-native/src/types.ts#L229-L236

  1. missing "InvalidatedByBiometricEnrollment" in demo app
    Android = new BiometricOptionsAndroid
    {
    Title = "Enable biometric title",
    Subtitle = "subtitle",
    Description = "description",
    NegativeButtonText = "Cancel",
    AccessConstraint = BiometricAccessConstraintAndroid.BiometricOnly,
    },

    Set InvalidatedByBiometricEnrollment = true

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.