question

Dan avatar image
Dan asked ·

Are there any circumstances CloverAuth.authenticate can fail for a live merchant?

We have a merchant who cannot login to our app (K1FV6NJ0G4RJ1). I am 99% sure it is because some exception is thrown when I do this:

CloverAuth.AuthResult authResult = null;
try {
    Account a = CloverAccount.getAccount(context);
    authResult = CloverAuth.authenticate(context, a, true, null, null);
} catch (OperationCanceledException | AuthenticatorException | IOException e) {
    e.printStackTrace();
}

I have a vague recollection of this happening before to another merchant and the device was actually replaced. It is not affecting anyone else. Has anyone seen this, and what could cause it?
MerchantAuth
11 comments
10 |2000 characters needed characters left characters exceeded

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

What type of device does your customer use?

0 Likes 0 · ·

I believe it was a 2018 station. Thanks Greg, I can see their issue has gone away (and they have gone quiet which is excellent), but I am certain this has happened before. They tell me they tried rebooting and reinstalling multiple times and it didn't go away. I think next time I will make 100% sure they do actually reinstall to verify that fixes it. One other thing they did tell me is they locked themselves out of their Clover account with to many password attempts, but I doubt that's related

0 Likes 0 · ·
My first guess would have been it's a Mini NextGen for which some changes in the account management of Android cause troubles (usually getAccount responds with no information). However if the problem occurs only sometimes it's of course more difficult to find out. Don't you use a tool to get the stacktrace if exceptions occur? (e.g. Bugsnag)
0 Likes 0 · ·

There are no known problems with accounts and Mini gen 2.

0 Likes 0 · ·

This could happen (normally) if the device was offline the first time the app was used. Otherwise it should never occur.

Get logs from the device. That'll include the specific reason it failed. Consider integrating a service like Crashalytics so you'll be able to get the logcat and know how often it is happening.

0 Likes 0 · ·
greg avatar image greg Jeffrey Blattman ♦♦ ·

Crashlytics has been integrated into Google's Firebase suite and needs Play Services, therefore no option for Clover anymore (https://firebase.google.com/docs/crashlytics/get-started?platform=android)

0 Likes 0 · ·

We use Crashalytics on some of our apps, so. There are many, many ways to phone home with crash data. It's also no a lot of work to hand roll something using an uncaught exception handler.

0 Likes 0 · ·
Show more comments
Dan avatar image Dan Jeffrey Blattman ♦♦ ·

Thanks Jeff, yeah we have Crashlytics but because it's just a caught exception I wasn't actually logging it specifically but I will now. Just glad to know whatever is happening is unusual (so maybe not even the issue).

0 Likes 0 · ·

0 Answers

· Write an Answer

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Welcome to the
Clover Developer Community