{"action":"created","issue":{"url":"https://api.github.com/repos/socketio/engine.io-client/issues/188","labels_url":"https://api.github.com/repos/socketio/engine.io-client/issues/188/labels{/name}","comments_url":"https://api.github.com/repos/socketio/engine.io-client/issues/188/comments","events_url":"https://api.github.com/repos/socketio/engine.io-client/issues/188/events","html_url":"https://github.com/socketio/engine.io-client/issues/188","id":18511729,"number":188,"title":"Socket occasionally stuck on Android 2.3 browser","user":{"login":"mokesmokes","id":1263321,"avatar_url":"https://avatars.githubusercontent.com/u/1263321?v=3","gravatar_id":"","url":"https://api.github.com/users/mokesmokes","html_url":"https://github.com/mokesmokes","followers_url":"https://api.github.com/users/mokesmokes/followers","following_url":"https://api.github.com/users/mokesmokes/following{/other_user}","gists_url":"https://api.github.com/users/mokesmokes/gists{/gist_id}","starred_url":"https://api.github.com/users/mokesmokes/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mokesmokes/subscriptions","organizations_url":"https://api.github.com/users/mokesmokes/orgs","repos_url":"https://api.github.com/users/mokesmokes/repos","events_url":"https://api.github.com/users/mokesmokes/events{/privacy}","received_events_url":"https://api.github.com/users/mokesmokes/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":9,"created_at":"2013-08-24T20:14:32Z","updated_at":"2015-07-29T13:18:29Z","closed_at":null,"body":"Here's a scenario that occurs in about 20% of cases with Android 2.3 browser (using engine.io 0.6.3 in a WebView in an app)\r\n1. Opening socket, 'polling' is the only transport, upgrade=false\r\n2. Immediately upon 'open' event I have a message to send\r\n3. In 20% of the cases - nothing happens, onreadystatechange never called, though engine.io client debug log says the xhr was sent.\r\n4. Server logs show the new connection and the initial GET poll, but my message never arrives.\r\n\r\nNotes:\r\n- closing the socket and reopening it works, though subsequent re-opens do occasionally hit the same bug (in my case I always have a message to send as soon as the socket is open).\r\n- if the socket connects cleanly, and the initial message goes through - all is apparently fine, until the following close/open, where there is a chance for it to happen again\r\n- if I delay the first message send by 100ms after the open event it fails much less, if I delay by 200ms it has not (yet) failed. Perhaps some race condition between the initial poll packet and my first message?\r\n- I have not seen it occur in other polling browsers - e.g. Android 4.x, or with websockets"},"comment":{"url":"https://api.github.com/repos/socketio/engine.io-client/issues/comments/125949588","html_url":"https://github.com/socketio/engine.io-client/issues/188#issuecomment-125949588","issue_url":"https://api.github.com/repos/socketio/engine.io-client/issues/188","id":125949588,"user":{"login":"Remo","id":129864,"avatar_url":"https://avatars.githubusercontent.com/u/129864?v=3","gravatar_id":"","url":"https://api.github.com/users/Remo","html_url":"https://github.com/Remo","followers_url":"https://api.github.com/users/Remo/followers","following_url":"https://api.github.com/users/Remo/following{/other_user}","gists_url":"https://api.github.com/users/Remo/gists{/gist_id}","starred_url":"https://api.github.com/users/Remo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Remo/subscriptions","organizations_url":"https://api.github.com/users/Remo/orgs","repos_url":"https://api.github.com/users/Remo/repos","events_url":"https://api.github.com/users/Remo/events{/privacy}","received_events_url":"https://api.github.com/users/Remo/received_events","type":"User","site_admin":false},"created_at":"2015-07-29T13:18:29Z","updated_at":"2015-07-29T13:18:29Z","body":"@rase- I haven't seen any issues with polling and 1.3.6, but feature detection seems to fail. When I specify `['websocket', 'polling']` it fails, but it works when I put polling first."}}