mirror of
https://github.com/UrbanApps/Armchair.git
synced 2026-07-14 16:52:52 +02:00
Removing warnings caused by Swift 2
This commit is contained in:
+31
-38
@@ -916,7 +916,7 @@ public class Manager : ArmchairManager {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private func _incrementCountForKeyType(incrementKeyType: ArmchairKey) {
|
private func _incrementCountForKeyType(incrementKeyType: ArmchairKey) {
|
||||||
var incrementKey = keyForArmchairKeyType(incrementKeyType)
|
let incrementKey = keyForArmchairKeyType(incrementKeyType)
|
||||||
|
|
||||||
let bundleVersionKey = kCFBundleVersionKey as String
|
let bundleVersionKey = kCFBundleVersionKey as String
|
||||||
// App's version. Not settable as the other ivars because that would be crazy.
|
// App's version. Not settable as the other ivars because that would be crazy.
|
||||||
@@ -927,11 +927,10 @@ public class Manager : ArmchairManager {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Get the version number that we've been tracking thus far
|
// Get the version number that we've been tracking thus far
|
||||||
var currentVersionKey = keyForArmchairKeyType(ArmchairKey.CurrentVersion)
|
let currentVersionKey = keyForArmchairKeyType(ArmchairKey.CurrentVersion)
|
||||||
var trackingVersion: String? = userDefaultsObject?.stringForKey(currentVersionKey)
|
var trackingVersion: String? = userDefaultsObject?.stringForKey(currentVersionKey)
|
||||||
// New install, or changed keys
|
// New install, or changed keys
|
||||||
if let version = trackingVersion {
|
if trackingVersion == nil {
|
||||||
} else {
|
|
||||||
trackingVersion = currentVersion
|
trackingVersion = currentVersion
|
||||||
userDefaultsObject?.setObject(currentVersion, forKey: currentVersionKey)
|
userDefaultsObject?.setObject(currentVersion, forKey: currentVersionKey)
|
||||||
}
|
}
|
||||||
@@ -940,7 +939,7 @@ public class Manager : ArmchairManager {
|
|||||||
|
|
||||||
if trackingVersion == currentVersion {
|
if trackingVersion == currentVersion {
|
||||||
// Check if the first use date has been set. if not, set it.
|
// Check if the first use date has been set. if not, set it.
|
||||||
var firstUseDateKey = keyForArmchairKeyType(ArmchairKey.FirstUseDate)
|
let firstUseDateKey = keyForArmchairKeyType(ArmchairKey.FirstUseDate)
|
||||||
var timeInterval: Double? = userDefaultsObject?.doubleForKey(firstUseDateKey)
|
var timeInterval: Double? = userDefaultsObject?.doubleForKey(firstUseDateKey)
|
||||||
if 0 == timeInterval {
|
if 0 == timeInterval {
|
||||||
timeInterval = NSDate().timeIntervalSince1970
|
timeInterval = NSDate().timeIntervalSince1970
|
||||||
@@ -1030,11 +1029,11 @@ public class Manager : ArmchairManager {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// check if the app has been used long enough
|
// check if the app has been used long enough
|
||||||
var timeIntervalOfFirstLaunch = userDefaultsObject?.doubleForKey(keyForArmchairKeyType(ArmchairKey.FirstUseDate))
|
let timeIntervalOfFirstLaunch = userDefaultsObject?.doubleForKey(keyForArmchairKeyType(ArmchairKey.FirstUseDate))
|
||||||
if let timeInterval = timeIntervalOfFirstLaunch {
|
if let timeInterval = timeIntervalOfFirstLaunch {
|
||||||
var dateOfFirstLaunch = NSDate(timeIntervalSince1970: timeInterval)
|
let dateOfFirstLaunch = NSDate(timeIntervalSince1970: timeInterval)
|
||||||
var timeSinceFirstLaunch = NSDate().timeIntervalSinceDate(dateOfFirstLaunch)
|
let timeSinceFirstLaunch = NSDate().timeIntervalSinceDate(dateOfFirstLaunch)
|
||||||
var timeUntilRate: NSTimeInterval = 60 * 60 * 24 * Double(daysUntilPrompt)
|
let timeUntilRate: NSTimeInterval = 60 * 60 * 24 * Double(daysUntilPrompt)
|
||||||
if timeSinceFirstLaunch < timeUntilRate {
|
if timeSinceFirstLaunch < timeUntilRate {
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
@@ -1043,7 +1042,7 @@ public class Manager : ArmchairManager {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// check if the app has been used enough times
|
// check if the app has been used enough times
|
||||||
var useCount = userDefaultsObject?.integerForKey(keyForArmchairKeyType(ArmchairKey.UseCount))
|
let useCount = userDefaultsObject?.integerForKey(keyForArmchairKeyType(ArmchairKey.UseCount))
|
||||||
if let count = useCount {
|
if let count = useCount {
|
||||||
if UInt(count) <= usesUntilPrompt {
|
if UInt(count) <= usesUntilPrompt {
|
||||||
return false
|
return false
|
||||||
@@ -1053,7 +1052,7 @@ public class Manager : ArmchairManager {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// check if the user has done enough significant events
|
// check if the user has done enough significant events
|
||||||
var significantEventCount = userDefaultsObject?.integerForKey(keyForArmchairKeyType(ArmchairKey.SignificantEventCount))
|
let significantEventCount = userDefaultsObject?.integerForKey(keyForArmchairKeyType(ArmchairKey.SignificantEventCount))
|
||||||
if let count = significantEventCount {
|
if let count = significantEventCount {
|
||||||
if UInt(count) < significantEventsUntilPrompt {
|
if UInt(count) < significantEventsUntilPrompt {
|
||||||
return false
|
return false
|
||||||
@@ -1073,11 +1072,11 @@ public class Manager : ArmchairManager {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// If the user wanted to be reminded later, has enough time passed?
|
// If the user wanted to be reminded later, has enough time passed?
|
||||||
var timeIntervalOfReminder = userDefaultsObject?.doubleForKey(keyForArmchairKeyType(ArmchairKey.ReminderRequestDate))
|
let timeIntervalOfReminder = userDefaultsObject?.doubleForKey(keyForArmchairKeyType(ArmchairKey.ReminderRequestDate))
|
||||||
if let timeInterval = timeIntervalOfReminder {
|
if let timeInterval = timeIntervalOfReminder {
|
||||||
var reminderRequestDate = NSDate(timeIntervalSince1970: timeInterval)
|
let reminderRequestDate = NSDate(timeIntervalSince1970: timeInterval)
|
||||||
var timeSinceReminderRequest = NSDate().timeIntervalSinceDate(reminderRequestDate)
|
let timeSinceReminderRequest = NSDate().timeIntervalSinceDate(reminderRequestDate)
|
||||||
var timeUntilReminder: NSTimeInterval = 60 * 60 * 24 * Double(daysBeforeReminding)
|
let timeUntilReminder: NSTimeInterval = 60 * 60 * 24 * Double(daysBeforeReminding)
|
||||||
if timeSinceReminderRequest < timeUntilReminder {
|
if timeSinceReminderRequest < timeUntilReminder {
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
@@ -1086,7 +1085,7 @@ public class Manager : ArmchairManager {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// if we have a global set to not show if the end-user has already rated once, and the developer has not opted out of displaying on minor updates
|
// if we have a global set to not show if the end-user has already rated once, and the developer has not opted out of displaying on minor updates
|
||||||
var ratedAnyVersion = userDefaultsObject?.boolForKey(keyForArmchairKeyType(ArmchairKey.RatedAnyVersion))
|
let ratedAnyVersion = userDefaultsObject?.boolForKey(keyForArmchairKeyType(ArmchairKey.RatedAnyVersion))
|
||||||
if let ratedAlready = ratedAnyVersion {
|
if let ratedAlready = ratedAnyVersion {
|
||||||
if (!shouldPromptIfRated && ratedAlready) {
|
if (!shouldPromptIfRated && ratedAlready) {
|
||||||
return false
|
return false
|
||||||
@@ -1113,18 +1112,14 @@ public class Manager : ArmchairManager {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private func showsRemindButton() -> Bool {
|
private func showsRemindButton() -> Bool {
|
||||||
if let title = remindButtonTitle {
|
return (remindButtonTitle != nil)
|
||||||
return true
|
|
||||||
} else {
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private func showRatingAlert() {
|
private func showRatingAlert() {
|
||||||
#if os(iOS)
|
#if os(iOS)
|
||||||
if operatingSystemVersion >= 8 && usesAlertController {
|
if operatingSystemVersion >= 8 && usesAlertController {
|
||||||
/* iOS 8 uses new UIAlertController API*/
|
/* iOS 8 uses new UIAlertController API*/
|
||||||
var alertView : UIAlertController = UIAlertController(title: reviewTitle, message: reviewMessage, preferredStyle: UIAlertControllerStyle.Alert)
|
let alertView : UIAlertController = UIAlertController(title: reviewTitle, message: reviewMessage, preferredStyle: UIAlertControllerStyle.Alert)
|
||||||
alertView.addAction(UIAlertAction(title: cancelButtonTitle, style:UIAlertActionStyle.Cancel, handler: {
|
alertView.addAction(UIAlertAction(title: cancelButtonTitle, style:UIAlertActionStyle.Cancel, handler: {
|
||||||
(alert: UIAlertAction!) in
|
(alert: UIAlertAction!) in
|
||||||
self.dontRate()
|
self.dontRate()
|
||||||
@@ -1171,7 +1166,7 @@ public class Manager : ArmchairManager {
|
|||||||
|
|
||||||
#elseif os(OSX)
|
#elseif os(OSX)
|
||||||
|
|
||||||
var alert: NSAlert = NSAlert()
|
let alert: NSAlert = NSAlert()
|
||||||
alert.messageText = reviewTitle
|
alert.messageText = reviewTitle
|
||||||
alert.informativeText = reviewMessage
|
alert.informativeText = reviewMessage
|
||||||
alert.addButtonWithTitle(rateButtonTitle)
|
alert.addButtonWithTitle(rateButtonTitle)
|
||||||
@@ -1187,7 +1182,7 @@ public class Manager : ArmchairManager {
|
|||||||
self.handleNSAlertReturnCode(response)
|
self.handleNSAlertReturnCode(response)
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
var returnCode = alert.runModal()
|
let returnCode = alert.runModal()
|
||||||
handleNSAlertReturnCode(returnCode)
|
handleNSAlertReturnCode(returnCode)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1343,7 +1338,7 @@ public class Manager : ArmchairManager {
|
|||||||
}
|
}
|
||||||
#elseif os(OSX)
|
#elseif os(OSX)
|
||||||
if let url = NSURL(string: reviewURLString()) {
|
if let url = NSURL(string: reviewURLString()) {
|
||||||
var opened = NSWorkspace.sharedWorkspace().openURL(url)
|
let opened = NSWorkspace.sharedWorkspace().openURL(url)
|
||||||
if !opened {
|
if !opened {
|
||||||
debugLog("Failed to open \(url)")
|
debugLog("Failed to open \(url)")
|
||||||
}
|
}
|
||||||
@@ -1353,7 +1348,7 @@ public class Manager : ArmchairManager {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private func reviewURLString() -> String {
|
private func reviewURLString() -> String {
|
||||||
var template = reviewURLTemplate
|
let template = reviewURLTemplate
|
||||||
var reviewURL = template.stringByReplacingOccurrencesOfString("APP_ID", withString: "\(appID)")
|
var reviewURL = template.stringByReplacingOccurrencesOfString("APP_ID", withString: "\(appID)")
|
||||||
reviewURL = reviewURL.stringByReplacingOccurrencesOfString("AFFILIATE_CODE", withString: "\(affiliateCode)")
|
reviewURL = reviewURL.stringByReplacingOccurrencesOfString("AFFILIATE_CODE", withString: "\(affiliateCode)")
|
||||||
reviewURL = reviewURL.stringByReplacingOccurrencesOfString("AFFILIATE_CAMPAIGN_CODE", withString: "\(affiliateCampaignCode)")
|
reviewURL = reviewURL.stringByReplacingOccurrencesOfString("AFFILIATE_CAMPAIGN_CODE", withString: "\(affiliateCampaignCode)")
|
||||||
@@ -1367,7 +1362,7 @@ public class Manager : ArmchairManager {
|
|||||||
var trackingInfo: Dictionary<ArmchairKey, AnyObject> = [:]
|
var trackingInfo: Dictionary<ArmchairKey, AnyObject> = [:]
|
||||||
|
|
||||||
for keyType in ArmchairKey.allValues {
|
for keyType in ArmchairKey.allValues {
|
||||||
var obj: AnyObject? = userDefaultsObject?.objectForKey(keyForArmchairKeyType(keyType))
|
let obj: AnyObject? = userDefaultsObject?.objectForKey(keyForArmchairKeyType(keyType))
|
||||||
if let val = obj as? NSObject {
|
if let val = obj as? NSObject {
|
||||||
trackingInfo[keyType] = val
|
trackingInfo[keyType] = val
|
||||||
} else {
|
} else {
|
||||||
@@ -1466,7 +1461,7 @@ public class Manager : ArmchairManager {
|
|||||||
private func migrateAppiraterKeysIfNecessary() {
|
private func migrateAppiraterKeysIfNecessary() {
|
||||||
|
|
||||||
let appiraterAlreadyCompletedKey: NSString = keyForArmchairKeyType(.AppiraterMigrationCompleted)
|
let appiraterAlreadyCompletedKey: NSString = keyForArmchairKeyType(.AppiraterMigrationCompleted)
|
||||||
var appiraterMigrationAlreadyCompleted = userDefaultsObject?.boolForKey(appiraterAlreadyCompletedKey as String)
|
let appiraterMigrationAlreadyCompleted = userDefaultsObject?.boolForKey(appiraterAlreadyCompletedKey as String)
|
||||||
|
|
||||||
if let completed = appiraterMigrationAlreadyCompleted {
|
if let completed = appiraterMigrationAlreadyCompleted {
|
||||||
if completed {
|
if completed {
|
||||||
@@ -1474,7 +1469,7 @@ public class Manager : ArmchairManager {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
var oldKeys: [String] = [AppiraterKey.FirstUseDate,
|
let oldKeys: [String] = [AppiraterKey.FirstUseDate,
|
||||||
AppiraterKey.UseCount,
|
AppiraterKey.UseCount,
|
||||||
AppiraterKey.SignificantEventCount,
|
AppiraterKey.SignificantEventCount,
|
||||||
AppiraterKey.CurrentVersion,
|
AppiraterKey.CurrentVersion,
|
||||||
@@ -1483,7 +1478,7 @@ public class Manager : ArmchairManager {
|
|||||||
AppiraterKey.DeclinedToRate,
|
AppiraterKey.DeclinedToRate,
|
||||||
AppiraterKey.ReminderRequestDate]
|
AppiraterKey.ReminderRequestDate]
|
||||||
for oldKey in oldKeys {
|
for oldKey in oldKeys {
|
||||||
var oldValue: NSObject? = userDefaultsObject?.objectForKey(oldKey) as? NSObject
|
let oldValue: NSObject? = userDefaultsObject?.objectForKey(oldKey) as? NSObject
|
||||||
if let val = oldValue {
|
if let val = oldValue {
|
||||||
let newKey = armchairKeyForAppiraterKey(oldKey)
|
let newKey = armchairKeyForAppiraterKey(oldKey)
|
||||||
userDefaultsObject?.setObject(val, forKey: newKey)
|
userDefaultsObject?.setObject(val, forKey: newKey)
|
||||||
@@ -1498,7 +1493,7 @@ public class Manager : ArmchairManager {
|
|||||||
// This only supports the default UAAppReviewManager keys. If you customized them, you will have to manually migrate your values over.
|
// This only supports the default UAAppReviewManager keys. If you customized them, you will have to manually migrate your values over.
|
||||||
private func migrateUAAppReviewManagerKeysIfNecessary() {
|
private func migrateUAAppReviewManagerKeysIfNecessary() {
|
||||||
let appReviewManagerAlreadyCompletedKey: NSString = keyForArmchairKeyType(.UAAppReviewManagerMigrationCompleted)
|
let appReviewManagerAlreadyCompletedKey: NSString = keyForArmchairKeyType(.UAAppReviewManagerMigrationCompleted)
|
||||||
var appReviewManagerMigrationAlreadyCompleted = userDefaultsObject?.boolForKey(appReviewManagerAlreadyCompletedKey as String)
|
let appReviewManagerMigrationAlreadyCompleted = userDefaultsObject?.boolForKey(appReviewManagerAlreadyCompletedKey as String)
|
||||||
|
|
||||||
if let completed = appReviewManagerMigrationAlreadyCompleted {
|
if let completed = appReviewManagerMigrationAlreadyCompleted {
|
||||||
if completed {
|
if completed {
|
||||||
@@ -1507,7 +1502,7 @@ public class Manager : ArmchairManager {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// By default, UAAppReviewManager keys are in the format <appID>_UAAppReviewManagerKey<keyType>
|
// By default, UAAppReviewManager keys are in the format <appID>_UAAppReviewManagerKey<keyType>
|
||||||
var oldKeys: [String:ArmchairKey] = ["\(appID)_UAAppReviewManagerKeyFirstUseDate" : ArmchairKey.FirstUseDate,
|
let oldKeys: [String:ArmchairKey] = ["\(appID)_UAAppReviewManagerKeyFirstUseDate" : ArmchairKey.FirstUseDate,
|
||||||
"\(appID)_UAAppReviewManagerKeyUseCount" : ArmchairKey.UseCount,
|
"\(appID)_UAAppReviewManagerKeyUseCount" : ArmchairKey.UseCount,
|
||||||
"\(appID)_UAAppReviewManagerKeySignificantEventCount" : ArmchairKey.SignificantEventCount,
|
"\(appID)_UAAppReviewManagerKeySignificantEventCount" : ArmchairKey.SignificantEventCount,
|
||||||
"\(appID)_UAAppReviewManagerKeyCurrentVersion" : ArmchairKey.CurrentVersion,
|
"\(appID)_UAAppReviewManagerKeyCurrentVersion" : ArmchairKey.CurrentVersion,
|
||||||
@@ -1519,7 +1514,7 @@ public class Manager : ArmchairManager {
|
|||||||
"\(appID)_UAAppReviewManagerKeyPreviousVersionDeclinedToRate" : ArmchairKey.PreviousVersionDeclinedToRate,
|
"\(appID)_UAAppReviewManagerKeyPreviousVersionDeclinedToRate" : ArmchairKey.PreviousVersionDeclinedToRate,
|
||||||
"\(appID)_UAAppReviewManagerKeyRatedAnyVersion" : ArmchairKey.RatedAnyVersion]
|
"\(appID)_UAAppReviewManagerKeyRatedAnyVersion" : ArmchairKey.RatedAnyVersion]
|
||||||
for (oldKey, newKeyType) in oldKeys {
|
for (oldKey, newKeyType) in oldKeys {
|
||||||
var oldValue: NSObject? = userDefaultsObject?.objectForKey(oldKey) as? NSObject
|
let oldValue: NSObject? = userDefaultsObject?.objectForKey(oldKey) as? NSObject
|
||||||
if let val = oldValue {
|
if let val = oldValue {
|
||||||
userDefaultsObject?.setObject(val, forKey: keyForArmchairKeyType(newKeyType))
|
userDefaultsObject?.setObject(val, forKey: keyForArmchairKeyType(newKeyType))
|
||||||
userDefaultsObject?.removeObjectForKey(oldKey)
|
userDefaultsObject?.removeObjectForKey(oldKey)
|
||||||
@@ -1586,8 +1581,7 @@ public class Manager : ArmchairManager {
|
|||||||
repeat {
|
repeat {
|
||||||
// this path is called only on iOS 6+, so -presentedViewController is fine here.
|
// this path is called only on iOS 6+, so -presentedViewController is fine here.
|
||||||
if let controller = topController {
|
if let controller = topController {
|
||||||
var presented: UIViewController? = controller.presentedViewController
|
if let presented = controller.presentedViewController {
|
||||||
if let presentedController = presented {
|
|
||||||
isPresenting = true
|
isPresenting = true
|
||||||
topController = presented
|
topController = presented
|
||||||
} else {
|
} else {
|
||||||
@@ -1603,7 +1597,7 @@ public class Manager : ArmchairManager {
|
|||||||
if var window = UIApplication.sharedApplication().keyWindow {
|
if var window = UIApplication.sharedApplication().keyWindow {
|
||||||
|
|
||||||
if window.windowLevel != UIWindowLevelNormal {
|
if window.windowLevel != UIWindowLevelNormal {
|
||||||
var windows: NSArray = UIApplication.sharedApplication().windows
|
let windows: NSArray = UIApplication.sharedApplication().windows
|
||||||
for candidateWindow in windows {
|
for candidateWindow in windows {
|
||||||
if let candidateWindow = candidateWindow as? UIWindow {
|
if let candidateWindow = candidateWindow as? UIWindow {
|
||||||
if candidateWindow.windowLevel == UIWindowLevelNormal {
|
if candidateWindow.windowLevel == UIWindowLevelNormal {
|
||||||
@@ -1615,8 +1609,7 @@ public class Manager : ArmchairManager {
|
|||||||
}
|
}
|
||||||
|
|
||||||
for subView in window.subviews {
|
for subView in window.subviews {
|
||||||
var nextResponder: UIResponder? = subView.nextResponder()
|
if let responder = subView.nextResponder() {
|
||||||
if let responder = nextResponder {
|
|
||||||
if responder.isKindOfClass(UIViewController) {
|
if responder.isKindOfClass(UIViewController) {
|
||||||
return topMostViewController(responder as? UIViewController)
|
return topMostViewController(responder as? UIViewController)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user