question

bhampton avatar image
bhampton asked Kuldeep answered

why is clover on my emulator offline

Over the weekend, clover on my emulator went offline and now i can't sync new orders with sandbox. In developer options, I checked the debugger enabled checkbox and restarted. no success. I re-installed clover and now i can't connect to choose a merchant. getting a sslhandshakeexception saying

error: 14094415:SSL routines:SSL3_READ_BYTES:sslv3 alert certificate expired (external/openssl/ssl/s3_pkt.c

1256...

How do i fix this issue and get back online?



android emulator details

Name: Nexus_7_2012_API_19


CPU/ABI: Intel Atom (x86)


Path: /.android/avd/Nexus_7_2012_API_19_2.avd


Target: default [] (API level 19)


Skin: nexus_7


SD Card: 1 GiB


hw.dPad: no


hw.lcd.height: 1280


runtime.network.speed: full


hw.accelerometer: yes


hw.device.name: Nexus 7


vm.heapSize: 2024


skin.dynamic: yes


hw.device.manufacturer: Google


hw.lcd.width: 800


hw.gps: yes


hw.initialOrientation: landscape


image.androidVersion.api: 19


hw.audioInput: yes


image.sysdir.1: system-images/android-19/default/x86/


tag.id: default


showDeviceFrame: yes


hw.camera.back: emulated


hw.mainKeys: no


AvdId: Nexus_7_2012_API_19


hw.camera.front: emulated


hw.lcd.density: 213


avd.ini.displayname: Nexus 7 (2012) API 19


hw.gpu.mode: auto


hw.device.hash2: MD5:4e3492aa3286da2ae492e41b433ab70e


hw.ramSize: 2024


hw.trackBall: no


PlayStore.enabled: false


fastboot.forceColdBoot: yes


hw.battery: yes


hw.cpu.ncore: 2


hw.sdCard: yes


tag.display:


runtime.network.latency: none


hw.keyboard: yes


hw.sensors.proximity: no


disk.dataPartition.size: 2024M


hw.sensors.orientation: yes


avd.ini.encoding: UTF-8


hw.gpu.enabled: yes

Emulator
4 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.

Our emulators are experiencing the same problem. Still searching for a solution

1 Like 1 ·

Yah, same for me and my colleague.

0 Likes 0 ·

If it helps, I've also attempted with engine versions 2117, 2131, and 2133 with the same error.

0 Likes 0 ·
Thank you, we are still looking into this.
1 Like 1 ·
Toby Miller avatar image
Toby Miller answered

I am experiencing the same type of issue. Here's a bit more detail:


Clover Engine 2134 (on a Dev Kit)

This works fine, no problems.


Clover Engine 2134 (on a Fresh VM)

This throws an SSLHandshakeException.


Clover Engine 2132 (on a Fresh VM)

This throws an SSLHandshakeException.


Clover Engine 2112 (on a Fresh VM)

This throws an SSLHandshakeException.


Clover Engine 2112 (on a previously setup VM)

This shows as offline in the Orders app (did not disconnect it).


I need to build a 2016 model image to test some layout changes and cannot, so this is blocking me too (I can't even rely on my Dev Kit for this task because it's the 2018 model). The last time I remember authorizing a VM and it working was some time over two weeks ago.


Stack Trace (same on all versions)

2021-08-10 02:22:50.360 6179-27264/com.clover.engine I/CloverOkHttpClient: execute(CloverOkHttpClient.java:246)[AsyncTask #56]: Exception processing request URL: https://apisandbox.dev.clover.com/v2/internal/account/auth, exception: javax.net.ssl.SSLHandshakeException: Handshake failed
2021-08-10 02:22:50.361 6179-27264/com.clover.engine I/CloverOkHttpClient: execute(CloverOkHttpClient.java:256)[AsyncTask #56]: Completed method: POST, to URL: https://apisandbox.dev.clover.com/v2/internal/account/auth, response: -1 (null), elapsed time: 559ms
2021-08-10 02:22:50.361 6179-6179/com.clover.engine I/LoginFragment: onPostExecute(ConnectorSafeAsyncTask.java:64)[main]: com.clover.engine.authenticator.LoginFragment$5 safely finished execution
2021-08-10 02:22:50.362 6179-6179/com.clover.engine I/LoginFragment: onTransportError(Callback.java:112)[main]: Exception javax.net.ssl.SSLHandshakeException: Handshake failed
    com.clover.common.http.NetworkErrorException: javax.net.ssl.SSLHandshakeException: Handshake failed
        at com.clover.engine.io.http.CloverOkHttpClient.newNetworkErrorException(CloverOkHttpClient.java:125)
        at com.clover.engine.io.http.CloverOkHttpClient.execute(CloverOkHttpClient.java:248)
        at com.clover.engine.io.http.CloverOkHttpClient.execute(CloverOkHttpClient.java:194)
        at com.clover.engine.io.http.CloverOkHttpClient.execute(CloverOkHttpClient.java:189)
        at com.clover.engine.io.http.CloverOkHttpClient.post(CloverOkHttpClient.java:361)
        at com.clover.engine.authenticator.LoginFragment$5.action(LoginFragment.java:358)
        at com.clover.common2.AsyncTaskAdapter.doInBackground(AsyncTaskAdapter.java:110)
        at com.clover.common2.AsyncTaskAdapter.doInBackground(AsyncTaskAdapter.java:44)
        at android.os.AsyncTask$2.call(AsyncTask.java:305)
        at java.util.concurrent.FutureTask.run(FutureTask.java:237)
        at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:243)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
        at java.lang.Thread.run(Thread.java:761)
     Caused by: javax.net.ssl.SSLHandshakeException: Handshake failed
        at com.android.org.conscrypt.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:429)
        at okhttp3.internal.connection.RealConnection.connectTls(RealConnection.java:320)
        at okhttp3.internal.connection.RealConnection.establishProtocol(RealConnection.java:284)
        at okhttp3.internal.connection.RealConnection.connect(RealConnection.java:169)
        at okhttp3.internal.connection.StreamAllocation.findConnection(StreamAllocation.java:258)
        at okhttp3.internal.connection.StreamAllocation.findHealthyConnection(StreamAllocation.java:135)
        at okhttp3.internal.connection.StreamAllocation.newStream(StreamAllocation.java:114)
        at okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.java:42)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
        at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.java:93)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
        at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.java:93)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
        at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.java:127)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
        at com.clover.core.interceptor.LogInterceptor.intercept(LogInterceptor.java:62)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
        at com.clover.core.interceptor.GzipRequestInterceptor.intercept(GzipRequestInterceptor.java:30)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
        at com.clover.core.interceptor.CloverHeaderInterceptor.intercept(CloverHeaderInterceptor.java:88)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
        at okhttp3.RealCall.getResponseWithInterceptorChain(RealCall.java:257)
        at okhttp3.RealCall.execute(RealCall.java:93)
        at com.clover.engine.io.http.CloverOkHttpClient.execute(CloverOkHttpClient.java:223)
        at com.clover.engine.io.http.CloverOkHttpClient.execute(CloverOkHttpClient.java:194) 
        at com.clover.engine.io.http.CloverOkHttpClient.execute(CloverOkHttpClient.java:189) 
        at com.clover.engine.io.http.CloverOkHttpClient.post(CloverOkHttpClient.java:361) 
        at com.clover.engine.authenticator.LoginFragment$5.action(LoginFragment.java:358) 
        at com.clover.common2.AsyncTaskAdapter.doInBackground(AsyncTaskAdapter.java:110) 
        at com.clover.common2.AsyncTaskAdapter.doInBackground(AsyncTaskAdapter.java:44) 
        at android.os.AsyncTask$2.call(AsyncTask.java:305) 
        at java.util.concurrent.FutureTask.run(FutureTask.java:237) 
        at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:243) 
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133) 
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607) 
        at java.lang.Thread.run(Thread.java:761) 
     Caused by: javax.net.ssl.SSLProtocolException: SSL handshake terminated: ssl=0xa173c840: Failure in SSL library, us
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.

David Marginian avatar image
David Marginian answered

We are looking into this.

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.

David Marginian avatar image
David Marginian answered David Marginian commented

There is nothing 3rd party devs can do to resolve this problem, the issue is on our end. We are aware of the issue and we are actively working on finding the root cause so that we can fix it. I will update this post as soon as I hear that the issue has been resolved.

4 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.

There is nothing devs can do ? what does that even mean ? devs wont fix ??
0 Likes 0 ·
It means you can't do anything to resolve the issue (downloading different versions of engine, etc.) and will have to wait for us to resolve it.
0 Likes 0 ·
adil avatar image adil David Marginian ♦♦ ·
Oh i thought ur devs wont fix it . hihi.
0 Likes 0 ·
Show more comments
Kuldeep avatar image
Kuldeep answered

Hey all, this Emulator issue is fixed. Please Re-install the app (com.clover.engine-2134.apk) and try again. Any issues please let us know.


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.

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