androidfacebookandroid-asynctask

Facebook SDK stuck on AsyncTask, blocks all threads on single executor


this is the stack trace of the AsyncTask which is indefinitely stuck in runnable state.

  at com.android.org.conscrypt.NativeCrypto.SSL_do_handshake(Native Method) 
  at com.android.org.conscrypt.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:320) 
  at com.android.okhttp.Connection.upgradeToTls(Connection.java:1285)   
  at com.android.okhttp.Connection.connect(Connection.java:1197)    
  at com.android.okhttp.internal.http.HttpEngine.connect(HttpEngine.java:392)   
  at com.android.okhttp.internal.http.HttpEngine.sendRequest(HttpEngine.java:295)   
  at com.android.okhttp.internal.http.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:373) 
  at com.android.okhttp.internal.http.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:323) 
  at com.android.okhttp.internal.http.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:491) 
  at com.android.okhttp.internal.http.DelegatingHttpsURLConnection.getResponseCode(DelegatingHttpsURLConnection.java:105)   
  at com.android.okhttp.internal.http.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:25)    
  at com.facebook.Response.fromHttpConnection(Response.java:312)    
  at com.facebook.Request.executeConnectionAndWait(Request.java:1561)   
  at com.facebook.Request.executeBatchAndWait(Request.java:1460)    
  at com.facebook.Request.executeBatchAndWait(Request.java:1429)    
  at com.facebook.Request.executeBatchAndWait(Request.java:1411)    
  at com.facebook.Request.executeAndWait(Request.java:1383) 
  at com.facebook.Request.executeAndWait(Request.java:1269) 
  at com.facebook.internal.Utility.getAppSettingsQueryResponse(Utility.java:708)    
  at com.facebook.internal.Utility.access$000(Utility.java:57)  
  at com.facebook.internal.Utility$1.doInBackground(Utility.java:630)   
  at com.facebook.internal.Utility$1.doInBackground(Utility.java:627)   
  at android.os.AsyncTask$2.call(AsyncTask.java:288)    
  at java.util.concurrent.FutureTask.run(FutureTask.java:237)   
  at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)  
  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)    
  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)    
  at java.lang.Thread.run(Thread.java:818)  

Why its happening? Its blocking my all other asynctasks. Plz help.

(Android API 22, FB SDK 3.21.1)

Solution

  • Not a solution though. It looks like a bug in FB 3.x.x SDK version. I didn't find it reproducing anymore since I updated the SDK to 4.x.x