ShinobiCharts Quick Update for iPhone 5s

Written by Colin Eberhardt

Recent breaking changes to Apple’s OpenGL implementation have caused issues with ShinobiCharts while running on 64-bit hardware. We are happy to announce that we have a fix for this issue. This blog post gives further details and directions for how to update your affected products.

Open GL backwards compatibility issue

At ShinobiControls we pride ourselves on keeping our product up-to-date with the latest Apple SDK releases. For iOS 7 we released updates to our components as soon as the NDA was lifted, this included a 64-bit version that had been fully tested on the simulator as well as available hardware. Unfortunately, we do not have any way of testing out product on real hardware until Apple releases to the mass-market.

When the iPhone 5s hardware became available we discovered that there was a rendering issue with our chart that is not apparent when running on a device simulator. We have been working hard to identify the root cause of this issue and release a fix.

With the iPhone 5s, Apple has moved to a new processor architecture that is claimed to be fully backwards compatible. Whilst this should mean support for existing GL code, like our own, we have discovered a bug in Apple’s multi-sampling implementation on the 64bit hardware. We have implemented a work-around and raised a radar with Apple to alert them of this regression.

What you need to do

Unfortunately, because this is a change that breaks backwards compatibility in the hardware itself and not a bug in the charts as such, anyone who has a product using ShinobiCharts needs to update their app in order to ensure it works properly for iPhone 5s users.

You need to add an updated version of ShinobiCharts (containing a workaround) to your code, re-build and submit an update of your products to the App Store.

There are three options available to you:

  1. If you’re still using 2.2.1 and don’t want to deal with API changes, please use the 2.2.1a release for minimal changes.
  2. If you are currently using the 2.3 release and want to re-build your product with minimal changes, choose the 2.3.1c release.
  3. If you want to incorporate our new iOS 7 look and feel, choose the 2.5.5 (or later) release.

These releases are both available via our customer portal. If neither of the above releases are suitable for your purposes or you have any questions or concerns, please get in touch.