The problem occurs on production with our merchants.
The problem is that it is not able to get the merchant info by the Clover sdk.
To get the merchant info we are using the following code
public Observable<Merchant> getMerchant() { if (merchant != null) { return Observable.just(merchant); } Account account = getCloverAccount(); MerchantConnector merchantConnector = new MerchantConnector(context, account, null); merchantConnector.connect(); return Observable.create(emitter -> { try { merchant = merchantConnector.getMerchant(); } catch (RemoteException | ClientException | ServiceException | BindingException e) { Timber.e(e, "Cannot get merchant info! For account " + account); } finally { merchantConnector.disconnect(); } if (merchant == null) { emitter.onError(new Exception("Cannot get merchant info!")); return; } emitter.onNext(merchant); emitter.onComplete(); }); }
And the following exception is thrown:
E/null Cannot get merchant info! For account null com.clover.sdk.v1.BindingException: Could not bind to Android service at com.clover.sdk.v1.ServiceConnector.waitForConnection(ServiceConnector.java:199) at com.clover.sdk.v1.ServiceConnector.execute(ServiceConnector.java:245) at com.clover.sdk.v1.merchant.MerchantConnector.getMerchant(MerchantConnector.java:208)
Do you have any idea how to fix this issue?