iOS 7 Kony Platform Compatibility

Download Report

Transcript iOS 7 Kony Platform Compatibility

iOS 7 : Kony Platform
Compatibility
Date: 26-Aug-2013
Copyright © 2013 Kony Inc. CONFIDENTIAL
11
iOS 7 Compatibility patch 2
Copyright © 2013 Kony Inc. CONFIDENTIAL
2
iOS 7 Compatibility patches

Plugin versions
Compatibility Patch to be used
5.0.x
5.0.x.iOS7Patch2.zip
4.1.x
4.1.x.iOS7Patch2.zip
4.0.x
4.0.x.iOS7Patch2.zip
3.0.x
3.0.x.iOS7Patch2.zip
2.6.x
2.6.x.iOS7Patch2.zip
Please download the above compatibility patches from Kony Developer Portal

http://developer.kony.com/PluginReleases
Copyright © 2013 Kony Inc. CONFIDENTIAL
3
Guidelines and Notes

Please continue to use the version of the xCode and version of the IDE that
you are already using. No need of changing IDE, xCode environment.

Please be aware for any reason, if you upgrade xCode environment to
latest from Apple i.e xCode 5.0 and build the apps then will result apps with
the new iOS 7 specific look & feel when produced app is run on iOS 7
upgraded devices.

Please read the FAQ section in deciding the xCode environment to be used
for your project.

Upgrade the device ( iPhone 4, 4S, 5 etc) to iOS 7 latest beta. iOS 7 beta 6
is the latest from Apple.

Build and compile the apps in IDE, in xCode environment and load the final
app on iOS 7 upgraded device.
Copyright © 2013 Kony Inc. CONFIDENTIAL
4
Issues Fixed
Copyright © 2013 Kony Inc. CONFIDENTIAL
5
1. Issues fixed – UDID alternate APIs
APIs that used to return device MAC address now return fixed values instead of MAC address.
In iOS 7 release:

APIs that used to return a MAC address now return a fixed value 02:00:00:00:00:00.
Impacted Kony APIs:

kony.os.deviceInfo().customdeviceid

kony.os.deviceInfo().deviceid

os.platform().deviceid

os.platform().customdeviceid
Cause of this issue:

Apple has completely removed all possible ways of retrieving or making Unique Device Level
Identifier (UDID) and instead, recommends developers using App Level Universally Unique
Identifier (UUID). Uniqueness of this app level identifier is maintained across the apps from the
same provider.
Kony’s response:

Kony has provided the alternative APIs with the Patch 2.
Copyright © 2013 Kony Inc. CONFIDENTIAL
6
Brief Introduction to these alternate APIS to UDID
 Apple with iOS 7 removes all possibilities of creating our own unique
device level identifier
 Apple from iOS 6 and above introduces few identifiers which are not
true replacement for the unique device id as these identifiers can be
reset in few scenarios.
 identifierForVendor
 An alphanumeric string that uniquely identifies a device to the app’s
vendor. The value of this property is the same for apps that come
from the same vendor running on the same device. A different
value is returned for apps on the same device that come from
different vendors, and for apps on different devices regardless of
vendor.
 Note that the OS automatically deletes the current
identifierForVendor when the user deletes the last application
from a particular vendor. If he later reinstalls one or more apps from
that vendor, the OS will generate a new identifier.
Copyright © 2013 Kony Inc. CONFIDENTIAL
7
Brief Introduction to these alternate APIS to UDID
 advertisingIdentifier- An alphanumeric string unique to each
device, used only for serving advertisements.

Unlike the identifierForVendor property of UIDevice, the same value is returned
to all vendors. This identifier may change—for example, if the user erases the
device.

Apart from advertising purposes, Apple suggest to use the advertising identifier
only for the following purposes: frequency capping, conversion events,
estimating the number of unique users, security and fraud detection, and
debugging.
 For more information regarding the behaviors exhibited
by this API, please refer

http://oleb.net/blog/2012/09/udid-apis-in-ios-6/
Copyright © 2013 Kony Inc. CONFIDENTIAL
8
Kony’s recommendation
 Now these alternative identifiers APIs are available from Patch
2 onwards , Kony would recommend below changes in the
app.

Use os.platform.deviceInfo().customdeviceid API for the devices with iOS
version less than 6.0

For iOS versions iOS 6.0 and above, please use the alternative identifiers i.e
identifierForVendor , advertisingIdentifier as needed and applicable
– kony.os.deviceInfo().identifierForVendor (in JS)
– Kony.os.deviceInfo().advertisingIdentifier (In JS)
– os.platform(). identifierForVendor (in Lua)
– -os.platform(). advertisingIdentifier (in Lua)
Copyright © 2013 Kony Inc. CONFIDENTIAL
9
Usage of new APIs in JS
 Usage of IdentifierForVendor
If ( OS version is less than 6.0)
{
kony.os.deviceInfo().customdeviceid
}
else
{
kony.os.deviceInfo().IdentifierForVendor
}
 Usage of advertisingIdentifier
If ( OS version is less than 6.0)
{
kony.os..deviceInfo().customdeviceid
}
else
{
kony.os.deviceInfo(). advertisingIdentifier
}
Copyright © 2013 Kony Inc. CONFIDENTIAL
10
Usage of new APIs in Lua
 Usage of IdentifierForVendor
If ( OS version is less than 6.0)
{
os.platform().customdeviceid
}
else
{
os.platform().IdentifierForVendor
}
 Usage of advertisingIdentifier
If ( OS version is less than 6.0)
{
os.platform().customdeviceid
}
else
{
os.platform(). advertisingIdentifier
}
Copyright © 2013 Kony Inc. CONFIDENTIAL
11
2. Issues Fixed – UI Issues

When app is built xCode 5 and run on iOS7, Full screen layout is
introduced in iOS7 which is causing UI overlaps

Camera overlay issues

Checkbox group widget click not working as on-off switch is going out of
the view.

Issues, crashes in Custom transitions are fixed.

Next, Prev tool bar, Navigation Bar look & feel is made compatible to iOS
7.
Copyright © 2013 Kony Inc. CONFIDENTIAL
12
Known Issues
Copyright © 2013 Kony Inc. CONFIDENTIAL
13
1. Known Issues –

Label size difference b/w iOS6 and iOS7.

Due to this difference on IOS 7 device you might see the labels getting
wrapped in different manner compared to iOS 6.0

Segment edit style is not working on iOS7 device.

Segment separator lines are not touching the border.
Copyright © 2013 Kony Inc. CONFIDENTIAL
14
FAQs
Copyright © 2013 Kony Inc. CONFIDENTIAL
15
1. Can I still continue with iOS 6 look and feel even on iOS 7 upgraded
devices ?

Apps compiled using xCode versions less than 5.0 (<5.0) will get the iOS 6 look & feel even if
these apps are installed and run on iOS 7 upgraded device.

If customers decide to have iOS 6 look &feel consistently across iOS 6 and iOS 7 devices then it
is strongly recommended to use xCode versions less than5.0.

Rebuild your project using the Kony provided iOS 7 compatible patches (patch1) with xCode
versions less than 5.0 and test the app on iOS 7 upgraded device and resubmit the app.

Kony recommends this option for the projects which are already in production or for the apps
close to the submission process.
Please note that Kony iOS 7 compatibility patch (patch1) is necessary even if customers decide to
have iOS 6 look and feel for their apps on iOS 7 upgraded devices.
Copyright © 2013 Kony Inc. CONFIDENTIAL
16
2. Can I get the iOS 6 or iOS 7 look & feel for my app based on
the OS version of the device?

Yes. Apps compiled using xCode version 5.0 (latest from apple) will have appropriate look and feel
based on the OS version the app runs on.

However, customers are expected to modify the skins in Kony IDE to match the iOS 7 app
guidelines. This is significant effort and is not advised if your are already in production and just
need the iOS 7 compatibility or for the apps close to submission process and all you need is iOS7
compatibility but not the new look & feel provided by iOS7.

Please check the below app guidelines from apple for iOS 7 look & feel

https://developer.apple.com/library/prerelease/ios/documentation/UserExperience/Conceptual/MobileHIG/MobileHIG.pdf

Kony recommends this option for the apps which are just started or mid-way through their
execution.

Please note that Kony iOS 7 compatibility patch is necessary along with the Xcode 5.0 version.
Kony would provide a detailed update around the Skin changes required for iOS 7 compatibility in
the future iOS 7 communication notes.
Copyright © 2013 Kony Inc. CONFIDENTIAL
17
3. What are the OS distribution statics?

As per the Apple provided statistics pertaining to the distribution of OS versions, 94% of the
customers are using iOS 6. These statistics indicate that users are eager to upgrade to the latest
iOS versions of Apple.
https://developer.apple.com/devcenter/ios/checklist/
Copyright © 2013 Kony Inc. CONFIDENTIAL
18
4. Which devices are supported by iOS 7?
iOS 7 is supported on the following devices

iPhone 4

iPhone 4S

iPhone 5

iPod touch (5th gen)

iPad 2

iPad with Retina display

iPad mini
Note: 3GS device does not support iOS 7.
Copyright © 2013 Kony Inc. CONFIDENTIAL
19
5. When is iOS 7 GM scheduled to be released from Apple?

Apple may release the final iOS 7 GM by mid of September 2013.

GM is the final version from Apple that will be released to developers and approximately a week
after iOS 7 GM release, Apple will release the same for general public.

Expectation is to get the apps compatible with iOS7 before apple releases the iOS 7 final version
for general public use.
Copyright © 2013 Kony Inc. CONFIDENTIAL
20
6. Which Kony plugins are to be supported for this upgrade?
The following Kony plugins are supported (both Lua and JavaScript):

2.6

3.x

4.x

5.x
Copyright © 2013 Kony Inc. CONFIDENTIAL
21
7. Kony compatibility patch release plan
Kony compatibility patch release plan (tentatively) is as follows:

Intermediate patch on August 25, 2013

Intermediate patch on August 30, 2013.

Intermediate patch on September 9th, 2013.

Apple GM compliant patch on September 16th, 2013.
Copyright © 2013 Kony Inc. CONFIDENTIAL
22
Thank You
Copyright © 2013 Kony Inc. CONFIDENTIAL
23