Estimote / Android-Fleet-Management-SDK

Estimote Fleet Management SDK for Android
https://developer.estimote.com
MIT License
836 stars 451 forks source link

General quality of android+iBeacons bundle #102

Closed Den-Rimus closed 9 years ago

Den-Rimus commented 9 years ago

I have the one and only question: why is it so bad?

We got out Estimote beacons finally and it's quite a disappointment: our iPhone gets beacons pretty fast (approx. from 1 to 7 seconds it takes to find all that are currently in range), while android (I'm talking about that Estimote applications of yours - iOS and Android) usually takes 10-15 seconds to find at least one of them (we're taking the distance same as for iOS ± 1m). Sometimes it can not find a thing for a minute, sometimes it finds one but in a second it disappears...

Am I the only one experiencing such behaviour? Are there possible reasons for that (EstimoteSDK for android is not a final and of low quality/BluetoothAdapter from AndroidSDK is bad and buggy/Hardware of android devices is low-quality/other reasons)?

We used Nexus4 (API 21) and iPhone 5C (some 8.x iOS) for these tests?

Please respond - because it's important: we've planned iBeacons to be killer-feature for our shopping app (there's none or just several of those in our region so far) and now it turns to a huge headache.

P. S.: please don't treat this as an unsatisfied customer's angry letter :) I'm just trying to investigate the reasons and possible workarounds - to give some feedback for project owner so they could decide whether we keep up with iBeacons idea or drop it.

wiktor commented 9 years ago

It is mainly due to Nexus 4 (search for "nexus 4 bluetooth problem"). It has hardware problems because of the way Bluetooth and WiFi share antenna. Disabling WiFi helps which is a bummer. Other devices are much better.

Note that Android has bugs in BLE support: https://code.google.com/p/android/issues/detail?id=67272 http://stackoverflow.com/questions/22048721/bluetooth-share-has-stopped-working-when-performing-lescan http://stackoverflow.com/questions/22476951/bluetooth-share-has-stopped-alert-when-detecting-ibeacons-on-android

Please reopen if you have further questions.

Den-Rimus commented 9 years ago

Me again. I wonder - have you faced similar problems (like Nex4 has) with some other Android devices? I mean some widely-used vendors and models like Samsungs or HTC's (leaving different Chinese 'no-name' devices and similar out of scope)...

Maybe you would even want to add such info to repo readme - to prevent possible future threads like this.

adnan-SM commented 9 years ago

This has been a concern for me as well. Like sometimes the time taken by the Estimotes to get detected is way too long whereas the iPhone seems to detect them pretty fast every time. I have tried the tests on a Nexus 5 & Oneplus One.

wiktor commented 9 years ago

Samsung, HTC, Moto, Nexus devices are very good (with exception of Nexus 4).

Bluetooth stack on Android can causes delays especially when there are lots of Bluetooth devices around (more than 50). Hiccups can occur (as @adnan-SM) described and we are aware of those. Trying our best to overcome this problem.