Author Archives: Franklin Sujith Dsouza

Franklin Sujith Dsouza
Franklin Dsouza is a Software Engineer at Robosoft Technologies. He has an in-depth knowledge and an extensive work experience in working on iOS platform.
Mobile Technologies

WWDC20 announcements: what it means for enterprises and digital experiences

The annual Worldwide Developer Conference is a great opportunity for the developer community to learn about new possibilities in the Apple ecosystem and to interact with specialists from Apple. The platforms and devices have grown over the years – iPhone, iPad, Mac, Apple Watch and Apple TV with iOS, iPadOS, macOS, watchOS and tvOS. The combined ecosystem provides a great opportunity for developers to create a unified, seamless experience across devices and use-cases. The experience of a news channel custom-created on Apple TV is vastly different from its native app experience on a phone. Similarly, a bank’s digital experience on a phone and the Apple Watch will have to be treated differently both from a design and engineering perspective.

This year, due to the on-going COVID-19 pandemic, the format of the Apple Keynote event to kick off the WWDC week was different – it was entirely shot on video without a live crowd inside a hall. The format came in for much praise for its slick production value. Let’s take a look at some of the announcements and its implications for developers, product owners and enterprises.

Boosting the developer ecosystem on all fronts

In this segment, we will explore how Apple is empowering developers by offering programming flexibility, simplified UI designing, extended support outside the apple framework, interoperability, and much more.  Let’s start with the major updates that were announced across the developer platforms in use:

  1. SwiftUI: Build 100% SwiftUI-Based Apps

Launched last year, SwiftUI came as a beautiful gift from Apple that allowed you to bring your wildest app UI ideas to life in the most hassle-free manner, by leveraging the power of declarative programming. This year, Apple is making things more exciting by offering the ability to design 100% SwiftUI based apps. This means you can now design an entire app interface using the SwitfUI platform, instead of embedding the SwiftUI code in AppKit, UIKit or WatchKit.

With the all-new Lazy Stack, developers get to implement more efficient scrolling in their designs. This allows you to integrate beautiful toolbars, lists, grids, and shapes, along with cool new visual effects, as the Lazy API ensures efficient handling of enormous data sets to offer great performance. The code built-in SwitfUI can be easily shared across all Apple platforms.

  1. Xcode 12: Redesigned for a cutting-edge app building experience

Apple has launched Xcode 12 (BETA), which comes bearing a slew of awesome features, making it one of the top highlights of WWDC 2020.

A great feature in Xcode 12 is the StoreKit tool. This takes designing paid subscriptions and in-app purchase experiences to the next level.  It allows you to manipulate in-app payments in the iOS simulator with a new menu available in Debug > StoreKit.  This way, you can simulate subscription setup, in-app purchases, and even refunds, all locally on your Mac. There’s also a new StoreKit testing framework that allows you to automate testing of purchase workflows.

Along with that, the new Xcode version comes with a fresh new look to match the macOS Big Sur update. New document tabs make the opening of multiple files super-fast and lightweight. It allows you to open interface files, logs, and project files in their own tab. Navigator fonts can now be matched with the system size or can be set to small, medium, or large. The best part is that Xcode 12 builds macOS Universal apps by default to support new Macs with Apple silicon

  1. Web Development: Make web experiences more powerful and flexible

This year’s WWDC event has witnessed quite a lot of announcements on the web development front, allowing you to build great experiences for your users when they use your website, home screen web apps, or embedded WebKit views.

Apple has made it very easy for developers to build new extensions for Safari, as extensions from other browsers (developed in Java or HTML) can now be imported into Safari using its all-new Web-based API. There is only one thing you need to do, that is, to package the extension using Xcode and distribute it through the AppStore.

Along with that, Apple announced major improvements in performance, media features, and Web APIs.

1. Inter-operability: Apple has pushed the envelope for cross-browsing experience as Safari has passed over 14,000 interoperability tests.

2. Browsing performance: Your web-apps will get a major performance boost as Safari, yet again, sets new standards such as

  • 3x lower CPU usage while scrolling
  • 10x faster IndexedDB operations
  • 2x faster JavaScript Promises
  • 5x faster for-of loops
  • 12x faster JavaScript delete operations

3. Media features:

  • Support for WebP image format
  • Default image aspect ratio and orientation
  • Mac HDR display support
  • Remote Playback and Picture-in-Picture APIs

4. CSS: A new line of system font families were announced; system-ui, ui-sans-serif, ui-serif, ui-monospace, and ui-rounded

5. Integrations: Apple has enabled various useful integrations for a more seamless web experience:

  • Face ID & Touch ID: your websites or web apps can make use of Apple’s authentication system in a secure manner using Web Authentication API. It uses the secure enclave of the iPhone or iPad to provide the private keys, and guarantees they cannot leave the device.
  • AR Quick Look: You can customize the AR Quick Look feature for your web experience using the ARKit.
  • Payment: New Apple Pay updates with new button types and redacted billing information.
  • Web Animations API:  Play around with animations in web platforms with Web Animations API.

Unifying app development experience across Operating Systems

 Now let’s get down to the specific OS announcements.

1. iOS

Widgets: As the new iOS 14 was announced, the first thing that must have caught your attention must be the all-new widgets. Apple has indeed revamped its Springboard platform for a fresh new Home Screen experience. Widgets can now be a part of the Home Screen and can be completely customized as per one’s taste.  And as you guessed it, Widgets are built completely using the SwiftUI platform, allowing you to build, customize and share widget codes across all iOS devices.

App Clips: With App Clips, Apple has transformed discoverability for Apps. It allows users to experience small portions, or rather, a clip of an App and interact with it. This way, it allows them to avoid downloading full apps to just try them out and have more ephemeral experiences with apps. With over 2 million apps in the App Store, this is the perfect time for developers to leverage this feature. App Clips use “ephemeral” permissions to push notifications within 8 hours of the Clip launch and are built using a subset of the full project’s code (up to a 10 MB limit). A StoreKit view can be used to prompt the user to upgrade to the full version. Initially, Apple will allow users to launch clips by way of a QR code, but a new “App Clip Code” arriving later this year will allow users to find App Clip suggestions from the real-world using location tagging.

ARKit 4: The new ARKit introduces new a new Depth API to combine sensor data to map GPS data to points in a virtual world; Integrating Location Anchors to connect virtual objects with a real-world longitude, latitude, and altitude.

Picture-in-picture: Apple has finally brought Picture-in-Picture (PiP) to its devices. You can add PiP playback to your custom player by using the AVKit framework’s AV PictureInPictureController class.

2. macOS

The macOS Big Sur and the ARM-based Macs have been the highlights all along. But there are quite a few important updates that you might have missed. Let’s take a look at all of them:

  • Smooth Transition: The MacOS Big Sur has been optimized for a smooth transition from Intel-based Macs to ARM-based Macs, as ARM-optimized code is generated by Rosetta 2 without any changes or I/O slowdowns.
  • Apple’s hypervisor: It has been updated for ARM Macs to discourage the kernel extension requirement by VM tools.
  • Unmodified iOS Apps on Mac: This feature will be available on Macs with ARM processors, and be exclusive to those devices.
  • Custom content: Custom content extensions for Notification Centre are available to both Catalyst and AppKit developers.
  • Mac Idiom: The Mac Idiom allows iOS apps built using the Catalyst Project to be run on Macs in a full-blown native Mac resolution.

Improving user-experience across devices

 Now let’s get down to the device-specific announcements

1. iPadOS

  • Virtual Object Placement: With the all-new ARKit 4, Li-DAR enabled iPads now have instantaneous object placement that allows for entirely new types of apps, such as on-site architecture, design, landscaping, and manufacturing.
  • PencilKit stroke API: This API gives apps access to location, angle, and pressure data. Multi-tap and drag-to-select selects handwritten words and lines for manipulation in PencilKit apps.
  • Sidebars: 2-column to 3-column sidebars made from SwiftUI List are now available in both landscape and portrait orientation.
  • Scribble: PencilKit now features Scribble, which makes it easy to create apps with text entry fields that users can write in with Apple Pencil.

2. WatchOS

WatchOS 7 gets a makeover with new personalization features, health and fitness configurations for Apple Watch

  • Multiple Complications: Apps can create and offer multiple SwiftUI complications for each complication family, powered by the new CLKComplicationDescriptor object.
  • Edit Previews: Xcode 12’s live-updating complication previews feature lets you define example complications.

3. tvOS

Apple has released a slew of new features in the tvOS SDK, allowing you to enhance a user’s movie-watching or gaming experience even further.

  • Multiuser support: Using the new multiuser support for gaming, users can now switch dynamically between users and use both the Game Centre and iCloud to keep track of multiple players’ information. Use the new GKAccessPoint class to let users view and manage their Game Centre information from within your game.
  • Controller inputs: Allow users to play your game using their favourite controllers, by accepting inputs from additional types of devices, like a touchpad, a keyboard, or a mouse.
  • Picture-in-Picture (PiP): tvOS now supports AVPictureInPictureController, allowing you to implement a custom video player that offers PiP playback.
  • Custom Player Controls: A new SwiftUI VideoPlayer structure lets you add system-supplied playback controls to your custom player.

Bringing together the global developer community

Apart from all the software and hardware updates, there were some other announcements that also delighted developers across the world.

  • Virtual Lab: In-view of the on-going pandemic, Apple is creating an online version of the App Store lab to further support the Apple developer community across all of its platforms. Developers are encouraged to share their feedback at the virtual lab.
  • More accessibility: To integrate your apps into core platform features and deliver powerful functionality, Apple is launching a new Find My network accessory program. This program lets third-party device makers take advantage of a network with hundreds of millions of devices while continuing to offer end-to-end encryption so that only the user can see the location of their item.
  • AppStore guidelines: Developers will be able to appeal decisions if an app violates a given guideline, and also challenge the guideline itself. For apps that are already on the App Store, bug fixes not be delayed due to guideline violations (except for legal issues).

With this year’s WWDC event, it is clear that Apple is aiming to revolutionize app development across all devices and foster an ecosystem that allows developers to create applications for the future. With its continuous efforts, Apple is attracting more developers to build for its devices and leverage the latest tech innovations using its open-source tools.

More importantly, it allows both enterprises and developers to provide even more seamless experiences across devices and screens. Enterprises which have native apps on say iOS can now explore possibilities of bringing alive the app experience on other devices within the ecosystem, if there is a strong use case. This will further lock in customers making user retention easier.

At Robosoft, our experience on the Mac platform spans two decades. We were among the first to offer mobile app development as a service. Today, we are well poised to offer end-to-end digital experiences across platforms, devices and emerging technologies such as voice, chat, blockchain and more. The possibilities are even more exciting after the announcements at WWDC 2020.

Read More
Mobile Technologies

WWDC 2019: a roundup of key announcements for the developer ecosystem

Apple announced a slew of software updates for the Apple family of devices, including the iPhone, iPad, Mac desktops and laptops, Apple TV, and Apple Watch at the WWDC Keynote on June 3, 2019.

Let’s take a look at some of the highlights of the announcements:

iPadOS

A surprise announcement (missed by the tech news portals prior to the event  too) was the announcement of a new OS, exclusively for the iPad With their larger screens, Apple is pushing the boundaries on what you can do on an iPad. With the functionality gap widening between iPhones and iPads, Apple decided to split iOS and give iPad its own dedicated OS called iPadOS. iPadOS is built upon iOS but provides additional capabilities to build experiences that are unique to the iPad. I’m guessing you can still run your iOS apps on iPad but if you want your app to take advantage of the unique interactions of an iPad, you’ll have to create an iPadOS app development.

iPadOS

Image Source

Some of the features include:

  • Side by side apps, expose, file column views for more productivity
  • File sharing – iCloud drive folder sharing
  • You can plug in thumb drives, SD cards, external drives, import photos from your camera
  • Desktop class browsing on Safari iPad (desktop site instead of mobile site)
  • Downloads manager
  • Font customization
  • Use and buy custom fonts
  • Improvements for text editing using Multi-touch
  • Lower latency from 20ms to 9ms
  • Redesigned Pencil tools
  • PencilKit API

It seems like they’re really focused on making it a productivity machine rather than a casual device to consume content on (which I feel was the main focus of the iPad when it first came out). The emphasis is on multi-tasking, multi-touch gestures and an all-new home screen with an ability to pin widgets. Some of the features showcased (pen drive compatibility, column view of files, sharing of folders) make it amply clear that the intent is to keep working towards it being a replacement for laptops.

SwiftUI

SwiftUI

Image Source

SwiftUI is a new Apple framework that will allow you to create user interfaces with code. You can build UIs across iOS, iPadOS, macOS, watchOS and tvOS apps and it also comes with out of the box functionality for interface layout, Dark Mode, Accessibility, right-to-left language support and internationalization. Xcode 11 has a new way to design UIs without having to write any code. I will be downloading the Xcode 11 beta to check this out.

RealityKit

I haven’t spent much time playing around with ARKit myself but I’m still surprised by how cool these experiences are each time I see them. I was really impressed by the new RealityKit announced at WWDC that will allow you to create interactive AR experiences from a library of 3D objects and models. This drag and drop RealityComposer will allow people to create AR scenes even if they don’t have an extensive background in 3D graphics or 3D modelling.

ARKit 3

Two improvements they’ve made to this latest version of ARKit is around People Occlusion and Motion Capture.In the first demo, Apple showed people walking around in front of and behind of objects without messing up the order that they appear in. There’s some sort of automatic depth detection going on so ARKit knows the show the object behind or in front of the person.

In the second demo, Apple showed that you can perform motion capture on a person without any special equipment. Just point and record!

WatchOS

The Apple Watch has come a long way since the Series 1 when it was a companion device to the iPhone. Later it can be a stand alone device too with SIM support. With the next version of WatchOS, you can build apps specifically for the Apple Watch without the need for a companion iOS app. There are also new watch faces, cool new APIs for things like streaming audio or to allow your app to run for an extended amount of time. The Apple Watch also gets its own App Store. Apple also showcased health capabilities with activity trends, hearing health, cycle tracking (available on the Health app on iPhone too) and a redesigned health app dashboard (using ML for determining which metrics to show you).

tvOS

The tvOS app gets design enhancements, ability to add multiple user profiles, in-sync lyrics and more. You can now use Xbox  and PS4 controllers with the new tvOS.

iOS 13

Announcements pertaining to iOS were expected to be the highlight of the Keynote. A few tech blogs had already highlighted features like system-wide dark mode, new designs for Apple’s own apps etc. For me, the emphasis of iOS 13 was on improving performance. Here are a few examples:

  • Face ID unlocks 30% faster
  • App downloads are 50% smaller, app updates are 60% smaller
  • Up to 2x faster app launch speed

Aside from the above, dark mode was showcased. It gives a whole new playground for designers to think through the visual experience of their apps.

Apple has always offered privacy as a key differentiating factor relative to competition. In a significant move, they announced “Sign in with Apple” as an option to social logins. This option also has an ability to mask one’s emails ID when having to share it with other services or apps. With the ‘hide my email’ option the app would only see a randomly generated anonymous email address – an announcement which got a lot of applause from the crowd.

Sign in with Apple

Image Source

As an extension of the privacy initiatives, Apple announced new features and hardware for HomeKit, its framework for smart home devices. On display yesterday was HomeKit Secure Video, which analyzes videos from smart security cameras locally before encrypting and uploading them to iCloud. HomeKit enabled 3rd party routers were also announced which have firewall safeguards for connected accessories.

MacOS

There has been a lot of buzz about Project Marzipan months ahead of this WWDC. Turns out it is actually Project Catalyst which helps developers bring iOS apps to the Mac. It will be made available in the next version of macOS – named Catalina. Another interesting announcement was Sidecar which enables an iPad to be used as an external device.

Other notable announcements include Siri’s ability to read messages which you can respond via voice and it works with any app using SiriKit.

Here’s a 13-minute round up of the key announcements:

All in all, it was a feature packed Keynote with several interesting implications for the developer ecosystem. Over the next one week, Apple will reveal more on these features through the hands-on workshops and lectures at the WWDC. The impact of these features will be revealed in the months to come through exciting solutions in the app world.

 

 

 

Read More