summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason Wray <jason@kulturny.com>2015-12-02 17:36:09 -0500
committerJason Wray <jason@kulturny.com>2015-12-02 20:00:59 -0500
commite5f136a16a9482d6ae4df65166a353e8ecd2f03f (patch)
treeadcaafb753143f20b52a7cf4652a18930d6fcf66
parent43ca910f5484c15830a0fc24164df1799a17b6ca (diff)
downloadqtlocation-mapboxgl-e5f136a16a9482d6ae4df65166a353e8ecd2f03f.tar.gz
[ios] fix CoreTelephony crash (by removing it)
Fix #3112, ref #2581
-rw-r--r--CHANGELOG.md1
-rw-r--r--docs/BUILD_IOS_OSX.md1
-rw-r--r--platform/ios/MGLMapboxEvents.m45
3 files changed, 1 insertions, 46 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index a0fe1a2639..5d549c3bdc 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -23,6 +23,7 @@ Known issues:
## iOS master
+- Fixed CoreTelephony.framework crash. ([#3170](https://github.com/mapbox/mapbox-gl-native/pull/3170))
- `MGLMapView` methods that alter the viewport now accept optional completion handlers. ([#3090](https://github.com/mapbox/mapbox-gl-native/pull/3090))
- Fixed an issue preventing the compass from responding to taps after the compass is moved programmatically. ([#3117](https://github.com/mapbox/mapbox-gl-native/pull/3117))
diff --git a/docs/BUILD_IOS_OSX.md b/docs/BUILD_IOS_OSX.md
index 643241adf3..e605ce7ff0 100644
--- a/docs/BUILD_IOS_OSX.md
+++ b/docs/BUILD_IOS_OSX.md
@@ -83,7 +83,6 @@ Currently, until [#1437](https://github.com/mapbox/mapbox-gl-native/issues/1437)
- `libc++.dylib`
- `libsqlite3.dylib`
- `libz.dylib`
- - `CoreTelephony.framework` (optional, telemetry-only)
1. Add `-ObjC` to your target's "Other Linker Flags" build setting (`OTHER_LDFLAGS`).
diff --git a/platform/ios/MGLMapboxEvents.m b/platform/ios/MGLMapboxEvents.m
index 239ac7ece2..7f8df61095 100644
--- a/platform/ios/MGLMapboxEvents.m
+++ b/platform/ios/MGLMapboxEvents.m
@@ -75,23 +75,6 @@ const NSTimeInterval MGLFlushInterval = 60;
} else {
_scale = [UIScreen mainScreen].scale;
}
-
-#if !TARGET_OS_SIMULATOR
- // Collect cellular carrier data if CoreTelephony is linked
- Class MGLTelephony = NSClassFromString(@"CTTelephonyNetworkInfo");
- if (MGLTelephony) {
- id telephonyNetworkInfo = [[MGLTelephony alloc] init];
- SEL subscriberCellularProviderSelector = NSSelectorFromString(@"subscriberCellularProvider");
- id carrierVendor = [telephonyNetworkInfo performSelector:subscriberCellularProviderSelector];
-
- // Guard against simulator, iPod Touch, etc.
- if (carrierVendor) {
- SEL carrierNameSelector = NSSelectorFromString(@"carrierName");
- NSString *carrierName = [carrierVendor performSelector:carrierNameSelector];
- _carrier = carrierName;
- }
- }
-#endif
}
return self;
}
@@ -510,13 +493,6 @@ const NSTimeInterval MGLFlushInterval = 60;
[evt setValue:@((int)(100 * [UIDevice currentDevice].batteryLevel)) forKey:@"batteryLevel"];
[evt setValue:@(strongSelf.data.scale) forKey:@"resolution"];
- if (strongSelf.data.carrier) {
- [evt setValue:strongSelf.data.carrier forKey:@"carrier"];
-
- NSString *cell = [strongSelf currentCellularNetworkConnectionType];
- [evt setObject:(cell ? cell : [NSNull null]) forKey:@"cellularNetworkType"];
- }
-
MGLReachability *reachability = [MGLReachability reachabilityForLocalWiFi];
[evt setValue:([reachability isReachableViaWiFi] ? @YES : @NO) forKey:@"wifi"];
@@ -727,27 +703,6 @@ const NSTimeInterval MGLFlushInterval = 60;
// Can be called from any thread.
//
-- (NSString *) currentCellularNetworkConnectionType {
- NSString *radioTech;
-
- Class CTTelephonyNetworkInfo = NSClassFromString(@"CTTelephonyNetworkInfo");
- if (CTTelephonyNetworkInfo) {
- id telephonyNetworkInfo = [[CTTelephonyNetworkInfo alloc] init];
- SEL currentRadioAccessTechnologySelector = NSSelectorFromString(@"currentRadioAccessTechnology");
- radioTech = ((id (*)(id, SEL))[telephonyNetworkInfo methodForSelector:currentRadioAccessTechnologySelector])(telephonyNetworkInfo, currentRadioAccessTechnologySelector);
- }
-
- if (radioTech == nil) {
- return nil;
- } else if ([radioTech hasPrefix:@"CTRadioAccessTechnology"]) {
- return [radioTech substringFromIndex:23];
- } else {
- return @"Unknown";
- }
-}
-
-// Can be called from any thread.
-//
+ (BOOL) checkPushEnabled {
BOOL (^pushCheckBlock)(void) = ^{
BOOL blockResult;