iOS Troubleshooting

  1. Had a question for the logic of when a beacon is triggered, after a beacon is initially triggered when will it be triggered again? It doesn't appear to constantly call the beacon trigger while the beacon is in range, is there a timer or some other parameters that need to be met before the same beacon is triggered again?

  2. It will be triggered again when you go out of range and back in range of the beacon. What you're experiencing is related to iOS specific behaviour - iOS does not report that the device has left the range of a beacon until its signal remains undetected for long enough to rule out temporary physical interference with the Bluetooth low-energy radio signal. Try switching the beacon off, waiting for about 20-30 seconds and switching it back on. If you switch it on before that time iOS thinks that you haven't actually left the beacon - hence not receiving an event.

  3. We use Cocoapods for our library management, it appears that the Segment.io SDK included in the TapPoint SDK also uses CocoaPods in building their SDK and uses Reachability. So when I run a pod install and build our project I am getting duplicate symbol issues. As our libraries are fairly complex and have a lot of dependencies I would rather not have to remove the Reachability SDK for this project to eliminate the duplicate symbols. Have you all run into this issue before and/or have any solutions?

  4. As you're already using Cocoapods to manage your dependencies, the best solution would be for you to stop using the Segment.io library we provided and pull Segment.io yourselves via Cocoapods instead. Cocoapods is smart enough to manage the clash with Reachability itself and 'do the right thing'. You'll need to add the following line into your Podfile for your application target:

    pod 'Analytics', '3.1.0'
    Then in the Link Binary With Libraries build phase of your Xcode project you should remove our 'Segmentio.framework' library as it's no longer required. The application will then link without issue.

  5. If you have Segment embedded in your application via CocoaPods, ensure that you are using Segment version 3.0.0 or later as there has been a bug fix implemented to ensure that user location data can be collected on a background thread.

  6. By embedding Segment 3.0.0 or above into your application, we will be able to provide you with data analytics enhanced with the specific location where an interaction took place.