Releases: Countly/countly-sdk-ios
17.09
-
Updated for Xcode 9 and iOS 11
-
Added symbolication support for crash reports
-
Added Automatic dSYM Uploading script
-
Added extension subspec for integrating Rich Push Notifications with CocoaPods
-
Added nullability specifiers for better Swift compatibility
-
Added 28 new system UIViewController subclass exception for Auto View Tracking
-
Added convenience method for recording action event for manually handled notifications
-
Added convenience method for recording handled exception with stack trace
-
Added precaution for invalid event keys
-
Added precaution for corrupt request strings
-
Made Zero-IDFA fix optional
-
Fixed a view tracking duration problem where duration being reported as timestamp
-
Replaced
crashLogmethod withrecordCrashLogand added deprecated warning -
Changed dispatch queue type for opening external URLs
-
Other various improvements
- Added Bengali translation for star rating dialog
- Updated metric, event, view tracking and crash report reserved keys as constants
- Deleted unnecessary gitattributes file
- Deleted duplicate Zero-IDFA const
- Rearranged file imports
- Updated HeaderDocs
- Cleaned whitespace
17.05
-
Added Rich Push Notifications support (attachments and custom action buttons)
-
Added manual session handling
-
Added URL escaping for custom device ID and other user defined properties
-
Added support for accidental extra slash in host
-
Added architecture, executable name and load address for crash reporting
-
Added IP optional parameter
-
Added SDK metadata to all request
-
Switched to SHA256 for parameter tampering protection
-
Discarded
recordUserDetailsmethod and combined it withsavemethod -
Improved
AutoViewTrackingactive duration calculation -
Improved Countly payload check in notification dictionary
-
Fixed inner event timestamp for 32 bit devices
-
Fixed token cleaning when user's permission changes
-
Fixed checksum calculation for
zero-IDFAfix case -
Fixed OS version metric for
tvOS -
Fixed double
suspendmethod call when user kills the app using App Switcher -
Fixed a compiler warning for
macOStargets -
Fixed
AutoViewTrackingformacOStargets -
Fixed showing of multiple alerts in succession
-
Other various improvements
- Refactored picture upload data preparation from request string using
NSURLComponents - Refactored
zero-IDFAcheck - Refactored additional info to be sent with begin session request
- Refactored checksum appending
- Refactored URLSession generation
- Refactored opening external URLs on main thread
- Refactored device model identifier method
- Refactored sending crash report into connection manager
- Replaced
__OPTIMIZED__flag withDEBUGflag for push notification test mode detection - Replaced boundary method with constant string
- Replaced text based dismiss button with cross dismiss button for star-rating
- Redefined request query string keys as constants
- Redefined push notification reserved keys as constants
- Redefined GET request max length as a constant
- Redefined server input endpoint as a constant
- Redefined push notification test mode values as enum
- Standardized some integer types
- Standardized target checking preprocessor macro usage
- Deleted unnecessary
initoverride in push manager - Deleted unnecessary
updateSessionPeriodproperty in connection manager - Deleted unnecessary
starRatingDismissButtonTitleconfig property - Deleted internal crash test methods
- Added Czech and Latvian localization for star-rating dialog
- Changed example host URL for rebranding compatibility
- Updated handling of notification on
iOS9and older - Updated alert key handling in push notification payload
- Updated HeaderDocs
- Cleaned whitespace
- Refactored picture upload data preparation from request string using
! Warning for existing Countly iOS SDK users !
If you are already using a Countly iOS SDK version older than v16.12, please see before you update :
- Push Notifications section in documentation as push notifications integration has changed and simplified.
If you are already using a Countly iOS SDK version older than v16.02, please see before you update :
- Integration section in documentation as starting method of Countly has changed.
- Notes section in documentation as device ID mechanism has changed.
16.12
- Refactored push notifications
- Made integration more easy
- Added iOS10 push notifications handling
- Added convenience method for asking push notifications permission covers all iOS versions
- Renamed feature name from
CLYMessagingtoCLYPushNotifications - Added configuration option
doNotShowAlertForNotificationsto disable push triggered alerts - Discarded complicated
UIUserNotificationCategoryactions - Added configuration option
sendPushTokenAlwaysto record push token always (for sending silent notification to users without notification permission) - Discarded App Store URL fetching with
NSURLConnection
- Discarded iOS7 support and deprecated method calls
- Switched to runtime controlled internal logging instead of preprocessor flag
- Added AutoViewTracking support for tvOS
- Added view controller title and custom titleView support for AutoViewTracking
- Improved AutoViewTracking performance and Swift compatibility
- Refactored suspending for crash reporting
- Switched to async file save for suspending
- Added user login and logout convenience methods
- Added configuration option to enable Apple Watch related features
- Moved archiving of queued request into sync block to prevent a very rare occurring crash
- Refactored unsent session duration
- Added completion callback for automatically displayed star-rating dialog
- Partially fixed but temporarily disabled APM feature until server completely supports it
- Fixed too long exception name in crash reports on iOS10
- Other various improvements
- Refactored starting method
- Switched to separate window based alert controller displaying for push notifications and star-rating dialogs
- Renamed constant kCountlyStarRatingButtonSize to prevent compile time conflicts
- Renamed server input endpoint variable for white label SDK renamer script compatibility
- Updated star-rating reserved event key
- Added internal log for successful initialization with SDK name and version
- Fixed unused
UIAlertViewAssociatedObjectKeywarning for macOS - Removed old deviceID zero-IDFA fixer redundant request
- Added internal logging for connection type retrieval exception
- Added exception type info to crash reports
- Fixed duplicate exception adding for AutoViewTracking
- Prevented Countly internal view controllers from being tracked by AutoViewTracking
- Prefixed all category methods to prevent possible conflicts
- Changed timer's runloop mode
- Updated timestamp type specifier (thanks to @scottlaw)
- Changed SDK metadata sending to begin_session only
- Replaced empty string checks with length checks
- Cleared nullability specifiers
- Updated HeaderDocs
- Cleaned whitespace
! Warning for existing Countly iOS SDK users !
If you are already using a Countly iOS SDK version older than v16.12, please see before you update :
- Push Notifications section in documentation as push notifications integration has changed and simplified.
If you are already using a Countly iOS SDK version older than v16.02, please see before you update :
- Integration section in documentation as starting method of Countly has changed.
- Notes section in documentation as device ID mechanism has changed.
16.06.4
- Fixed iOS10 zero-IDFA problem
- Fixed TARGET_OS_OSX warning for iOS10 SDK on Xcode 8.
- Fixed ending of background tasks.
- Added parameter tampering protection.
- Added density metric.
- Added alwaysUsePOST config property for using POST method for all requests regardless of the data size.
- Added timezone.
- Switched to millisecond timestamp.
- Disabled server response dictionary check.
- Other minor improvements like better internal logging, standardization, whitespacing, code cleaning, commenting, pragma marking and HeaderDocing
! Warning for existing Countly iOS SDK users !
If you are already using a Countly iOS SDK version older than v16.02, before you update :
- Please see Integration section in documentation as starting method of Countly has been changed.
- Please see Notes section in documentation as device ID mechanism has been changed.
16.06.3
- Fixed a persistency related crash
- Improved thread safety of request queue and events
- Added Star-Rating, the simplest form of feedback from users, both automatically and manually.
- Improved event recording performance and safety for APM and Auto View Tracking.
- Added custom HTTP header field support for requests, both on initial configuration and later.
- Standardized internal logging grammar and formatting for easier debugging
- Improved headerdocs grammar and formatting for easier integration and usage
- Fixed some static analyzer warnings
! Warning for existing Countly iOS SDK users !
If you are already using a Countly iOS SDK version older than v16.02, before you update :
- Please see Integration section in documentation as starting method of Countly has been changed.
- Please see Notes section in documentation as device ID mechanism has been changed.
16.06.2
- Added Star-Rating, the simplest form of feedback from users, both automatically and manually.
- Improved event recording performance and safety for APM and Auto View Tracking.
- Added custom HTTP header field support for requests, both on initial configuration and later.
- Standardized internal logging grammar and formatting for easier debugging
- Improved headerdocs grammar and formatting for easier integration and usage
- Fixed some static analyzer warnings
! Warning for existing Countly iOS SDK users !
If you are already using a Countly iOS SDK version older than v16.02, before you update :
- Please see Integration section in documentation as starting method of Countly has changed.
- Please see Notes section in documentation as device device ID mechanism has changed.
16.06.1
- Added support for certificate pinning.
- Added deleting of user details properties on server by setting them as NSNull.
- Implemented switching between GET and POST depending on data size on requests.
- Fixed a URL encoding issue which causes problems for Asian languages and some JSON payloads.
- Fixed custom crash log formatter.
! Warning for existing Countly iOS SDK users !
If you are already using a Countly iOS SDK version older than v16.02, before you update :
- Please see Integration section in documentation as starting method of Countly has changed.
- Please see Notes section in documentation as device device ID mechanism has changed.
16.06
Important: Due to a bug introduced in this release, developers are encouraged to use latest SDK version.
- Fixed a problem with changing device ID (for system generated device IDs)
- Added isTestDevice flag to mark test devices for Push Notifications
- Improved Auto View Tracking by ignoring non-visible foundation UIViewController subclasses
- Implemented manually adding exception UIViewController subclasses for Auto View Tracking
- Changed default device ID type for tvOS from IDFA to NSUUID
- Added stored requests limit
- Added optional parameters ISOCountryCode, city and location for advanced segmentation
- Discarded timed events persistency
- Added buildUUID and build number to Crash Reports
- Added SDK name (language-origin-platform) to all requests
- Changed default alert title for push messages
- Other minor improvements like better internal logging, standardization, whitespacing, code cleaning, commenting, pragma marking and HeaderDocing
! Warning for existing Countly iOS SDK users !
If you are already using a Countly iOS SDK version older than v16.02, before you update :
- Please see Integration section in documentation as starting method of Countly has changed.
- Please see Notes section in documentation as device device ID mechanism has changed.
16.02.01
- Swithed to POST method for all requests by default
- Fixed some issues with Crash Reporting persistency
- Fixed some issues with CocoaPods v1.0.0
- Other minor fixes and improvements
! Warning for existing Countly iOS SDK users !
If you are already using a Countly iOS SDK version older than v16.02, before you update :
- Please see Integration section in documentation as starting method of Countly has changed.
- Please see Notes section in documentation as device device ID mechanism has changed.
16.02
Completely re-written iOS SDK with watchOS, tvOS & OSX support
- APM
- Manual/Auto ViewTracking
- UserDetails modifiers
- watchOS 2 support
- tvOS support
- Configurable starting
- Custom or system provided (IDFA, IDFV, OpenUDID) device ID
- Changing/merging device ID on runtime
- Persistency without CoreData
- Various performance improvements and minor bugfixes
! Warning for existing Countly iOS SDK users !
If you are already using a Countly iOS SDK version older than v16.02, before you update :
- Please see Integration section in documentation as starting method of Countly has changed.
- Please see Notes section in documentation as device device ID mechanism has changed.