Changes | Attribute | Description |
---|---|---|
BARB Firebase crashes | Bug Fix | App Crash reported by the Firebase Crashlitycs tool is fixed. |
Privacy manifest files | Improvement | Privacy manifest file is added to the SDK package. |
iOS 17/iPadOS 17 | Platform Review | Support for the iOS 17/iPadOS 17 platforms is added to the SDK package. |
Changes | Attribute | Description |
---|---|---|
XCFramework | Improvement | SDK is distributed now in the form of XCFramework distributable binary package. |
Changes | Attribute | Description |
---|---|---|
c-parameter | Improvement | c-parameter is added to the request as a fallback for missing cookie. |
kid | Improvement | A new identifier kid is now added to the measurement. |
iOS 15/iPadOS 15 | Platform Review | Support for iOS 15/iPadOS 15 platforms is added. |
Changes | Attribute | Description |
---|---|---|
IDFA | Enhancement |
SDK will now drop the usage of IDFA |
URLScheme | Enhancement |
SDK will now check for old URLScheme first and then the new one |
SSL off-loader | Improvement |
Removing ssl off-loader. Box will now take care of all ssl requests.(Internal) |
Offline Mode | Bug fix | Apps built with Xcode 12 will not crash with this release of SDK |
iOS14/iPadOS14 | Platform review |
SDK is now compatible and working with iOS14/iPadOS14 |
Changes | Attribute | Description |
---|---|---|
Demo Libraries | Improvement |
Added new target "Demo" to libraries |
WKWebview | Improvement |
Replaced UIWebview with WKWebview |
Changes | Attribute | Description |
---|---|---|
MultiMarket Support | Improvement |
Sensor now provides a way to update market/domain via new constructor(limited to Universal artifact, currently supports only UK,NO & DK markets) |
Changes | Attribute | Description |
---|---|---|
ITP 2.0 | Analysis |
Analysis: Cookie and Local Storage behavior in New Safari. |
iOS 12 | Analysis |
Test sensor on iOS 12. |
URL Scheme Trigger | Improvement |
Camel-Case and Lower-Case handling for URL scheme trigger. |
Virtual Meter | Improvement |
Added Virtual Meter trigger frequency, which triggers the Virtual Meter app every week in the first month after installation of the sensor and every month afterwards. |
Changes | Attribute | Description |
---|---|---|
32Bit iOS devices | Bugfix |
Fixes a crash on 32-bit devices, when using a VirtualMeter app. |
URL schema trigger | Bugfix |
VirtualMeter app trigger mechanism has been made more reliable. |
Changes | Attribute | Description |
---|---|---|
Control over IDFA Access | Bug |
The use of the IDFA can now be disabled in constructor. See API documentation for more information. |
Changes | Attribute | Description |
---|---|---|
OEWA | Bug fix |
OEWA version of the tagging sensor is not sending requests. |
Changes | Attribute | Description |
---|---|---|
Cookie Management | Improvement |
Store cookies in app data in order to prevent deletion of the cookies. |
Expose identifiers | Improvement |
The mobile identifiers can be accessed with the new public method getEncryptedIdentifiers of the class Stream. |
Ringbuffer | Improvement |
Ringbuffer now flushes all requests when the app goes into background. |
Ringbuffer | Improvement |
Requests from the ringbuffer will now be sent always, not only in offline mode. |
SSL | Improvement |
Non-SSL communication has been removed. |
Changes | Attribute | Description |
---|---|---|
Internal improvements | Improvement |
Some internal improvements and code cleaning |
Changes | Attribute | Description |
---|---|---|
Request Debugger | Improvement |
A debug Notification is integrated into the library, so that the customers are able to fetch the request sent by the library. See more #KMA_TAGGING_DEBUGINTERFACE_NOTIFICATION. |
Debug mode | Improvement |
Debug mode should be set to false if the application is live product. If the debug set to true, the KMA library will automatic add a flag "isDebug=1" in the http request. |
URL Scheme | Improvement |
New beta iOS 10 release has already fixed the url-scheme bug, now capital letters are again valid in url-scheme registration. |
URL encoding | bug fix |
URL encoding component is updated in the library. Symbols will be also url-encoded in measurement requests. |
Changes | Attribute | Description |
---|---|---|
URL Scheme | Improvement |
In iOS 10, all the url schemes have to be lower-case string, please modify the plist to grant lower-cased url scheme. |
API modifications | Improvement |
All the KMA_Spring library components are now with KMA as prefix, please adapt the changes in your implementation, more details can be found in the API documentation enclosed. |
API replacement | Improvement |
Some of the APIs are replaced with the latest iOS APIs, for better compability. From this version, iOS 6 will not be supported any more. |
Changes | Attribute | Description |
---|---|---|
Https transmission | Improvement |
Change the https prefix for some clients on their demand. QSIClient now is also aligned with ssl options. |
Changes | Attribute | Description |
---|---|---|
Https transmission | Improvement |
new API setSSL() is added to the library, default https ssl transmission is off, can be switched on. please don't swtich it on until Kantar media Support Team suggest so |
Changes | Attribute | Description |
---|---|---|
In-app | Improvement |
In-app survey service is updated |
In-app | Bug |
The sitename in waypoint information is now correct. |
Changes | Attribute | Description |
---|---|---|
ARC management | bug |
Fix the crashes caused by multiple ARC deallocation. |
Compiling warning | Improvement |
Set "Precompiling Header Prefix" to NO, to avoid precompiling warnings. |
BitCode | bug |
Enable "-fembed-bitcode" in 'Other C Flags', so that bitcode service can be enabled in Applications. |
Changes | Attribute | Description |
---|---|---|
Class Name | Improvement |
Add prefix to the class names and static variables, in order to avoid conflicts |
Resource bundle plist | Improvement |
Have the update accordingly for iOS9(CFBundleExecutable). |
Changes | Attribute | Description |
---|---|---|
Variable Name | Improvement |
Rename popularize variable names, in order to slove the symbol conflict |
Bitcode | Improvement |
Bitcode is enabled in the Spring lib, clients have the chance to enable or disable the bitcode service in their applications. |
Changes | Attribute | Description |
---|---|---|
Site Name | Improvement |
Update survey lib and apply in spring tagging measurement |
Changes | Attribute | Description |
---|---|---|
Site Name | Improvement |
Site name info now is in the QSIClient |
Changes | Attribute | Description |
---|---|---|
Background Thread | Fix |
Modify the corresponding background thread expiration handlers, prevent from the crash caused by the auto-release of the OS(180sec, or 600sec) |
Http Request Handler | Fix |
Fix a bug with the precheck on the application event, in order to prevent unnecessary background thread for http request |
Variable Name | Improvement |
Rename popularize variable names, in order to slove the symbol conflict |
Changes | Attribute | Description |
---|---|---|
Bundle Name | Improvement |
The 'an' parameter in the http request is restored to be the CFBundleDisplayname, instead of CFBundleName. |
Changes | Attribute | Description |
---|---|---|
Source Bundle | Fix |
Resource Bundle is added, only for the survey users. |
Changes | Attribute | Description |
---|---|---|
Survey services | Improvement |
Starting from the version 1.8.0, Spring lib has an extension, called SurveySpring, which offers you the opportunity to achieve the on-line questionary with the end users. The SurveySpring is not default embedded into the library, if you need more info, please contact support@spring.de, survey service can be attached on demands |
ARC | Fix |
The Spring lib is now changing to ARC(automatic reference counting), in order to wipe out/fix the potential/existing bugs. |
Delay on PanelApp switch | Improvment |
Postpone the URL scheme call to UIApplicationDidBecomeActive, only for panelApp users |
CFBundleName | Fix |
Replace the CFBundleDisplayName with CFBundleName in the requests |
Debug mode | Improvement |
Default debug setting is configured to false, only error message will present in the log if Spring lib debug mode is not set to true on purpose. |
Changes | Attribute | Description |
---|---|---|
Panel App | Improvement |
Starting from the version 1.7.3, Spring Audience Lib is able to pair with previous customized panelApp, as well as 'Nip App'. The related component is optimized. |
Advertising ID | Modification |
As Apple requested, add the check of user's 'Limit Ad tracking' option before reading the advertising ID. |
Changes | Attribute | Description |
---|---|---|
Data encoding | Fix |
Fix a parameter encoding problem |
Panel App | Improvement |
Speed up the switch to panel App, this improvement applies to the related clients |
Panel App | Modification |
Preconditions which leads to the panel App switch has been modified. With this modification, the main App with spring lib imported can also trigger the panel App even though the panel App has been installed after the main App. New Spring lib attempts on switching to the panel App every time when the main App goes foreground. This modification applies to the related clients |
Changes | Attribute | Description |
---|---|---|
App name retrieving | Fix |
Spring libs will be tolerant even if the app name is not registered correctly in application |
Communication with PanelApp | Improvement |
Optimize the communication module with Panel App, in order to register each single device with global unified id. This improvment is only applied for relative clients |
User-agent string | New Feature |
Starting with Spring lib 1.6.1, the default user-agent string of the device is inserted into http client parameters to be collected by the backend box. The user-agent string will be used for device type recognition. |
Availablity of retrieving IFV | Fix |
Fixed the crash caused by unavailable call of retrieving IFV (idforVendor). This bug crashes the app in iOS versions below 6.0.0. |
Reorganization of imports | Improvement |
Reorganized the header files, includes, imports, in order to avoid potential duplicate-symbols-error in case the -all_load flag is set in the main application. |
Force to apply aid | Special feature |
This update is only applied to some of our clients based on their requirements. Spring lib will produce a compile error to force the usage of advertising id (with the adSupportFramework imported into application) |
Changes | Attribute | Description |
---|---|---|
PanelApp Switch: Url Scheme | New Feature |
Since Spring 1.6.0, the lib will try to call a corresponding PanelApp (by URL Scheme, happens in the initializaiton phase, only called once if ifv is not changed since last lauch), and send ifv (identifier_for_vendor) and related parameters to the PanelApp. This mechanism is designed for identifying each single device owned by the end user. (ifv is unique for each vendor, but not globally) For adapting this mechanism, the clients of Spring lib has to implement their own PanelApp and also import Spring/SpringStreams lib into it. |
arm64 bits support | New Feature |
Since Spring 1.6.0, the lib will support arm64 bit architecture, Spring lib will be applicable for latest iOS devices. |
Customized special fields | Changes |
More customized parameteres/special fields are inserted into measuring http request, applied to our lib accordingly based on the different domains. |
Attribute | Description | |
---|---|---|
Identifier of Device | New Feature | The identifier of the device would be advertisement id + identifier_for_vendor(https://developer.apple.com/library/ios/documentation/uikit/reference/UIDevice_Class/Reference/UIDevice.html#//apple_ref/occ/instp/UIDevice/identifierForVendor) if your application contains video advertisement, otherwise the identifier of the device would be only identifier for vendor. This change responses to the modification of Apple Developers' Policy, advertisement ids are not accepted if no video adversements are involved in the application. |
lib Management | Change | PLEASE NOTICE: We have intergrated our spring sensor libraries for our clients to one, and this universal lib is applicable for all our clients. Your customized configurations are applied based on different domain, so it does not influence the functionalities of the library. This change affects some clients who are using old Spring library, please change your header file Spring*.h (your company indentifier), to Spring.h |
Attribute | Description | |
---|---|---|
Advertising-Framework | Improvement | Advertising-Framework is linked as optional for the compatibility purpose of iOS versions earlier than iOS 6 |
Attribute | Description | |
---|---|---|
OfflineMode | New Feature | If the app is configured to offlineMode, spring library would hold all requests in a local buffer and send them until the device goes back online. Spring lib checks the internet connection regularly by using a Timer and send the data as soon as possible. Please notice:\n -# Old requests would be droped if too many requests pump into local buffer for the limitation in buffer size. The default buffer size is 1000. The data will be stored in a local file, so we would not lose the requests even if the applicaiton terminated. -# Spring lib tries to send the requests in a fixed rate, 10 seconds by default, and sends them if device is online. This is achieved by using Apple NSTimer. \n\n This mode can be switched on and off by using public API. @see Spring.offlineMode |