Apple policy changes for developer

At WWDC 2016, Apple has made three changes to its policy in a bid to attract more developers to its platforms.

The first change came last week where Phil Schiller, the person in charged of the App Store, announced that Apple will open its in-app purchase renewable subscription to all categories of apps. Currently developers can adopt renewable subscriptions only for a few kind of app category, such as magazine app.

The second policy change is with Apple TV apps. Current policy states that all Apple TV apps must support the Apple remote. This is the reason why you do not see many console games being ported to Apple TV, as it takes effort to build for the Apple remote. This restriction will be gone. It is expected we will soon see more games being ported and made available on the Apple TV.

The third policy change is with regards to Mac apps and iCloud. Currently only apps on the Mac App Store is able to build iCloud features into their apps. Apple will relax this policy to allow apps outside of Mac App Store to use iCloud as long as the app is signed by a registered Apple developer. It is doubtful if this change will revert the decisions by many major apps that abandoned the Mac App Store. 

A smarter Apple? A softer Apple? 

Free technology ebooks from Packt Publishing

Free technology ebooks from Packt Publishing

If you have the appetite for learning about technology, be it a venture into Raspberry Pi as a hobby or programming your first mobile app, check out the free technology ebooks offer from Packt Publishing. Once a day, a new ebook from the publisher’s catalogue is offered for free. All you need is to create an account to claim the free ebook. You can read the ebook online or download it in PDF, ePub or Mobi format.

WWDC app has gone dark, now with tvOS and watchOS version

WWDC app has gone dark, now with tvOS and watchOS version

Apple has refreshed its WWDC app for iOS with a new black and white icon and dark theme. The app now has edition for Apple TV and Apple Watch. 

Make the most of the 2016 Apple Worldwide Developers Conference with the WWDC app. Even if you can’t join us in San Francisco, you can still follow along each day on iOS and tvOS. And because the WWDC app experience extends to Apple Watch, favorite session information is available right on your wrist.

• Watch live streamed sessions on iOS and tvOS.
• Stream or download WWDC videos from this year and previous years.
• Start watching on one iOS device, and pick up where you left off on another iOS device or on the new Apple TV.
• Browse times, locations, and descriptions for sessions, labs, and special events.
• Mark schedule items as favorites.
• Keep up with the latest news, get important notifications, and see new photos throughout each day.
• View accessible maps to find your way around Moscone West.
• Provide feedback on content and speakers for each session.
• Add your pass to Wallet for faster check-in at WWDC.

WWDC app is essential for attendees of Apple’s developer conference which kicks off June 13 Monday for a whole week. It includes track schedule and info, and sessions will be streamed live on the app. The app is also useful for all other Apple developers not in San Francisco for the event, to watch the live streams and to download the session videos.   

The WWDC keynote will start on June 13 10am (PT). Apple has invited the press to this presentation, where Tim Cook and his teams are likely to give highlights of new features of next generation version of iOS, OS X, tvOS and watchOS. 

Experience Amazon Echo in your browser at Echosim.io

Visit Echosim.io to experience Amazon Echo

With over 3 million units sold, Amazon Echo is a surprised hit and define a new category of smart home device. Its no wonder Google is developing its Google Home clone to compete, and rumours point to a similar device coming soon from Apple.

Echo enthusiast Sam Machin has created a web app based Echo simulator at EchoSim.io, complete with Alexa integration. Amazon Alexa is the bot engine (equivalent to Siri) behind Echo. The site is build to enable developers to experiment and test their Echo/Alexa apps. It is even promoted by Amazon to its developers.

Amazon Echo/Alexa is better than Siri in few areas. It is an always on device listening to you for the whole house. Currently Apple TV has Siri but is is only for query on TV, movie, song content, and is not always on. Echo has a superior and more accurate voice command detection capability. And its killer feature is an open API and platform for integration to third party apps and services. It is rumoured that Apple will release an SDK for Siri in the coming WWDC developer conference.

If you have not jump on the Amazon Echo bandwagon, check out EchoSim.io to find out what the fuss is all about.

Wish list for WWDC 2016 Part 2

We have written our Wish list for WWDC 2016 from a developers’ perspective. This is part 2 that includes some more wish lists.

MapKit for the Web

MapKit is currently limited to iOS and OS X. It is spotted that Apple is using its own map data at the newly launched WWDC site. Lets hope Apple will open up their Map database for third party web apps. Opening web API for MapKit will allow iOS and Mac developers to reuse the same data for web and Android version of their app.

Keeping OS X Command Line Utilities Current

As with any Unix based operating system, OS X contains a large number of command line utilities and tools. Apparently Apple is not keeping these tools updated even if there are security vulnerabilities.

This post highlights one example with the git tool. The version that is in the latest OS X El Capitan 10.11.4 contains two bugs that allows remote code execution. Worst still, it is not easy to remove the git version installed in OS X due to the rootless protection by El Capitan. Lets wish Apple applies their security update practice to these command line tools.

Sample Android Java app

Apple has its own Android app. How about teaching its developers how to develop one that uses CloudKit? WWDC will shock Android developers if there is such a talk.

Mac Bootcamp for Linux

It is possible to install Linux operating system such as Ubuntu for dual boot usage on a Mac. But there is no official support and installation instructions are coming from the communities. There is always the concern of hardware compatibility. There are large number of developers using Linux for their work. There is definitely a market as evident by Dell’s Linux based XPS 13 notebook. It makes sense for Apple to target these segment with a bootcamp for Linux. Apple is in the hardware business and not the OS business.

Siri API

It is long overdue. Apple seems to be ok with Amazon Echo and Alexa taking over the market.

Migrating from Parse to CloudKit

To reduce the number of non functional apps in the App Store that uses Parse, it might be in Apple’s interest to guide developers on how to migrate from Parse to its platform.

Swift Playground for iOS

It will probably be a few more years before we see Xcode for iPad, but there is no reason why there is no standalone Swift Playground for iOS. 

Push Notifications Kit

Push notifications is basic requirements for many apps but it requires a third party server in order for app to send out notifications. It is straight forward to implement such server using open source push notification server, or developer could implement push notifications via a provider.

The wish list is for Apple to be a push notifications provider in order to simplify the interfaces for apps to use push notifications. This could be implemented as add-on services on top of CloudKit. Interface could be implemented using web API or using server-to-server key similar to CloudKit.

Safari Downloader for iOS

Have you ever try to download a large file via mobile Safari? Its time Apple implements a background downloader for Safari in iOS.

Print to PDF for iOS

Print to PDF is basic feature in OS X. It is curiously missing in iOS. It should be implement right within iOS system printer to allow saving PDF output to iCloud Drive.

News app for the Rest of the World

Apple News app is available only in U.S., UK, and Australia. It appears to be an experiment for Apple as it is not rolled out to more countries months after its debut last September.

“Login With Apple” Identity Kit

Games that uses iOS Game Centre API is able to obtain unique user identity. This allows games to bypass user account registration and signin process. Apple prohibits non-games app to use this API. For normal apps, CloudKit provides similar mechanism whereby apps are able to obtain unique identifier for each user. Thus it is possible to implement a “Login with iCloud” to provide seamless signing without password.

However “Login with iCloud” requires user to grant additional permission by switching on iCloud. Not all users have iCloud enabled. The wish is for Apple to implement a general purpose Identity Kit that allows apps to implement “Login with Apple” that ties to users’ Apple ID. 

API for Notes App

Many are using Notes app for note taking. Notes app has become a goto app to store all sorts of personal data. It would be ideal if there is an API that allows third party apps to use Notes as the base for user’s data collection, be it notes, links, snippets, quotes etc.

Core Data sync with CloudKit

It is possible to roll your own codes to enable Core Data sync using CloudKit as store. It is however a complex undertaking. An official reference implementation from Apple is most welcomed.

Siri: WWDC 2016 will be held June 13 through June 17

WWDC 2016 will be held June 13 through June 17

There is no announcement yet on Apple’s WWDC website but Siri is telling us that WWDC 2016 will be held June 13 through June 17. Based on past years, Apple will be announcing ticket sales for WWDC anytime now. Are you as excited as Siri?

Updated: Hours after Siri broke the news, Apple officially announced WWDC 2016. Similar to past years’ practice, tickets are sold to developers through a lottery system. Visit Apple developer website now till April 22 10am PDT to register your interest. Apple will then select attendee randomly. Ticket at $1,599 can not be transferred or resold.  

WWDC 2016

Apple releases Safari Technology Preview for developers

Apple releases Safari Technology Preview for Developers

Apple has released a version of Safari for OS X called Safari Technology Preview. The app contains bleeding edge browser features that is under development, and is meant for web developers to help them get ready.

Safari Technology Preview is a version of Safari for OS X, distributed by Apple, that includes a cutting-edge, in-development version of the WebKit browser engine. It’s a great way to test upcoming WebKit features and give feedback to the people building them when it’s most useful — early on in development.

Web engine technology is evolving at a fast pace, both Chrome and Firefox have had a preview version of their browsers for years. Apple has finally made an effort to be helpful to web developers. Safari Technology Preview is useful for developers targeting iOS as the same WebKit engine is used in both OS X and iOS.

Download is free without registration for anyone at Apple developer website. You can run the preview app side-by-side with Safari and other browsers. Updates to the app will be delivered via Mac App Store.

Wish list for WWDC 2016

Apple’s developer conference WWDC 2016 is expected in early June. Here’s a developer’s wish list of things hopefully Apple will announce this year. This list is in no particular order.

Unified UIKit and AppKit

Developers are presented with two different UI kit when developing for both iOS and OS X. It is high time Apple support targeting both iOS and OS X using one unified kit. At the minimum, Apple should make it easy for developers to use the same iOS UI code to develop for OS X. 

It is speculated that Apple’s own Photos app is using the same ‘UXKit’ framework in both iOS and OS X version of the app. There is hope that Apple will release this framework to the public. It is an opportunity for Apple to revive the Mac platform. Nobody wants OS X to remain a dead native platform forever. 

Xcode for iPad

If we do not see Xcode for iPad soon, maybe Apple should strip the ‘Pro’ labelling for its iPad Pro. How about partnering with IBM for a “Visual Swift” tool for building enterprise iPad apps?

Scripting for iOS

With the success of Workflow, expect to see this popular automation app sherlocked by Apple soon. Where is Automator and AppleScript for iOS when you need them?

iOS as bots platform

Bots are taking over the programming world. Most bots are found in messaging and chat apps. Apple should make its platform the bots platform of choice. Ideally there should be an SDK for developers to add app specific bots and make them available as system utilities. Not sure technically how it should be accomplished. A bot app for a unified bots interface? Or a bot SDK for app to integrate with Siri?

Apple might just build a bot platform on top of iMessages. But the app does require some innovative features to be in competition with the likes of Facebook Messenger, WhatsApp and WeChat. Just an iMessages for Android might not save the day.

Split screen version 2

Split screen is a great addition in iOS 9. But two features are missing. The first is the ability to drag and drop between split apps. Touchscreen interface without drag-and-drop is like the first version of iOS without copy-and-paste. The second missing feature is the ability to run the same app side by side on split screen. 

App Store and Mac App Store

Developers like to blame Apple when they’re not able to generate enough earning for their livelihood on the iOS and Mac App Store. It’s a debate if the race to $0 dollar app is largely Apple’s fault. But there is so much more Apple can do to help out developers. Some might say it is not in Apple’s interest to care for all developers, since the majority of earnings are from but a few. Developers that are struggling to survive can either choose another way out or hope that at least some help is on its way. Whatever App Store changes Apple put in place, it is doubtful if it will have any impact on the dire situation smaller developers are facing today.  

Many developers have asked for a way to charge for upgrade for years. This is especially true for high price premium apps on the Mac App Store. Apple does not get it. Developer can release a new SKU for the new version of its app, but it is different from a paid upgrade. Without paid upgrade, no discount can be given to existing users. Many premium apps rely on upgrade from existing users, without such the business is just not sustainable. It is painful to see Apple just choose to ignore this feature request.

Apple supports auto-renewable subscription as an In-app purchase option but it has its quirks. First of all, it is not open to all apps and is under Apple’s discretion whether your app can use it or not. Imagine spending the time implementing auto-renewable subscription and then end up not being approved by Apple.

Then there is no option to allow developer to offer an “Unsubscribe” button from within the app. The subscription management is buried within App Store settings page.Then there is the issue of the app not knowing if the user has turn off renew automatically before the subscription actually ends. Developer can’t have the last attempt to prompt user to continue their subscription.

App Store team should seriously review how other subscription services are implemented. The current implementation is just not friendly to the app business.

Apple TV

There are a number of ways Apple can spruce up the current Apple TV. Apple TV is not the best general purpose media player due to its lack of 4K video. It is not the ideal game platform due to the limitation of its default controller. Third party gamepad is supported, but unless Apple release its own gamepad, not many will view Apple TV as a serious game platform. We don’t even get the most powerful A-series processor on Apple TV.

As an app platform, Apple TV is lacking in few departments. Where’s the camera and microphone when you want to develop a chat or video conference app? What is the best practice payment flow like for a shopping app? Where’s the SDK for Siri to develop an Amazon Echo like app? And there is no options for developers to use Apple TV as a HomeKit hub.

Developer News

Apple developers will likely shake their heads after visiting developers.googleblog.com. It is disheartening when you visit developer.apple.com/news/ and read those one sentence news such as “OS X El Capitan 10.11.4 beta 7 (15E64a) Now Available”, “iOS 9.3 beta 7 (13E5233a | 13E5234a) Now Available”. It appears that the news site is run by the App Store team. Need news on the latest development of Swift? Then it is on another site. Need to know the latest developer sample apps released by Apple, then you have to dig elsewhere. Looking for some tutorials on how to use Swift 2.2, head over to IBM blog. 

The news site is build more for managers of developers, with a total lack of articles and insight on how to build better apps for Apple platform. It is in Apple’s best interests to teach and train its developers all year round, not just during WWDC. Is it too much to ask Apple to dedicate some such resource? 

Multi-user support for iPad

One common use case for iPad is as an entertainment and reading device for family members. Multi-user support is ideal to enable such sharing. Apple might think multi-user support will impact iPad’s sale. The lack of this feature will not propel a family to buy more iPad. It will only give them inconveniences.

Apple might want to consider a brand new padOS for its iPad, with multi-user support, terminal command prompt, file management access and full USB support. This will make choosing an iPad Pro over MS Surface a no brainer exercise.

iPad sales is not growing. Maybe its not because of the hardware.

User login for tvOS

It is strange that when you switch on an AppleTV and see the photos, music, apps of one family member. tvOS requires a user account login for its App Store, Photos, Music, Podcasts etc. There is clearly a mismatch. A TV is a communal device shared by many. Hopefully Apple is working on a solution for the next version of tvOS.

Native Docker support for OS X

Docker container technology is storming into cloud computing, and is becoming the tool of choice for many developers, especially for backend app development. OS X is currently not compatible with the container tech used by Docker. Using Docker on OS X is clunky, as it relies on a virtual machine running a compatible Linux instance. It is no surprise to see that OS X is running out of flavour with some developers who choose to run Ubuntu or Debian on their Mac.