static synchronized void sOnSignalStrengthsChanged(SignalStrength signalStrength) { mData.setTime(System.currentTimeMillis()); mData.setSignal(signalStrength); if (OtherUtils.isThisDeviceAnEmulator() == true) { // The signal will usuaully be null on the Emulator... } else { // On a real device... there should generally be a signal... SKLogger.sAssert(CellTowersDataCollector.class, mData.getSignal() != null); } try { mData.setCellLocation(mTelManager.getCellLocation()); } catch (SecurityException e) { // Seen - rarely - on some Android devices. // Neither user 99999 nor current process has android.permission.ACCESS_COARSE_LOCATION. SKLogger.sAssert(CellTowersDataCollector.class, false); } }