The major problem with static methods is testability. Static methods are impossible to tests since they cannot be mocked by Mockito.
Right now the only way of testing code that uses SignInWithApple is to mock SignInWithApple.channel which breaks hermetisation, reveals implementation details and seems to be very low level.
Solution
Convert SignInWithApple to a singleton and change static methods to instance methods.
Issue
The major problem with static methods is testability. Static methods are impossible to tests since they cannot be mocked by
Mockito
.Right now the only way of testing code that uses
SignInWithApple
is to mockSignInWithApple.channel
which breaks hermetisation, reveals implementation details and seems to be very low level.Solution
Convert
SignInWithApple
to a singleton and change static methods to instance methods.