June 19, 2017

Top Takeaways from WWDC 2017 that Weren’t in the Keynote

While there were a lot of big announcements during this year’s WWDC Keynote, there were even more our Rocketeers learned during the sessions following it. Some of these barely made an appearance at the conference, but we think they’re some of the most exciting updates yet. If you are interested in learning more about these topics, you are also welcome to watch our webinar that aired Wednesday, June 14, 2017.  Click here to watch.

Business Chat Could Change Everything

Any business large enough to have a call center or customer support group should take note. Business Chat opens a support line directly in iMessages making it easier than ever help solve everyday customer problems with a tool that’s familiar to everyone. This interaction can begin from a button in an app, a link on your website, a CTA in an order confirmation email, or pretty much anywhere else you’d want to put it. Within the chat, you can share files, images, product images and/or videos, and much more. For example, let’s say a customer wanted to upgrade or change their seat on a flight – the airline could send them a layout of the seats available and can even charge for the upgrade through Apple Pay directly in iMessage. If you wanted to schedule a meeting, the details will be saved directly to the calendar.

Business Chat is available today and already integrates with LivePerson, Salesforce, Nuance, and Genesys.

CoreNFC Now Open to Developers

Near Field Communication (NFC) has been around for several years now, and the odds are good that you’ve used it and didn’t even know. NFC can be used for a wide range of applications, but to date it has primarily been used for mobile payment through apps such as Apple Pay. However, that may change very soon as Apple has officially opened the iPhone’s NFC functionality to developers. In true Apple style, they have taken every precaution to ensure user data remains secure. Each session must be initiated by the user and developers can only read, not write, data from an NFC tag. This means there will never be an accidental scan or possibility of someone pulling information from your phone. Brands will be able to leverage NFC for everything from presenting more information about a painting in a museum to adding items to an account in a hotel – but they will not be able to bill you directly from the interaction.

QR Reader Added to Default Camera App

In the United States, QR code sightings can be uncommon depending on where you live. In eastern markets, they are much more common. QR codes failed to reach widespread adoption in America because some didn’t know what to do with them and others didn’t see the value in downloading an app specifically for reading them. Now that Apple has integrated a QR reader into the default Camera app, that could change. However, western adoption of QR codes relies on content creators and advertisers just as much as, if not more than, users interacting with them. QR codes can be used for a wide range of applications such as sharing a playlist, opening a YouTube video, downloading an app, adding an item to a cart, and much more. The more interesting the experience, the more likely users are to give QR codes a try. To best leverage them, think guerilla marketing mixed with surprise and delight – people should feel as though they found something special rather than an advertisement, and where it takes them should almost be a reward.

CoreML Brings Machine Learning to the iPhone

The ways Google and Apple have approached artificial intelligence (AI) and machine learning (ML) are very different. One of the biggest differences is where the “magic” happens. Google’s approach is in the cloud while Apple’s is on-device. Processing the information on the iPhone itself not only provides a much faster experience but a much more private one. CoreML has three offerings at the moment, including Vision for image analysis, Foundation for language processing, and GameplayKit for NPC (non-player character) behavior, pathfinding, and more. While GameplayKit will mostly be used by game developers, Vision and Foundation can be used for a multitude of applications. For example, Vision can be used to recognize barcodes. You could use Vision to show more information about a product after a consumer scans the barcode or, with some training, teach Siri to recognize the product itself so that they can simply take a picture of the product to learn more.

Siri’s New Extensions

Three new extensions are now available to developers through SiriKit. For apps that allow you to make or check off items on a list, Siri can now be integrated into the app to allow users to take actions around those lists. The other two extensions, Points and Domains, can be leveraged for rewards and loyalty points. Points will allow users to ask Siri questions, such as “do I have enough points to book a flight to LA?” and Domains will allow users to scan visual codes such as loyalty points on a purchase to have them automatically added to your account in the app. With Siri’s new extensions, the customer experience in apps can be improved greatly as Siri makes it easier for consumers to keep track and add reward points to their accounts.

The App Store Gets an Overhaul

There are some big changes coming to the App Store. First off, Apple has completely redesigned the store and added several sections to improve the app discovery experience. There will be three primary sections to the store – Apps, Games, and Today. To make it even easier to decide if you want to download an app, Apple has also added the option for developers to upload up to three videos to showcase gameplay, features, and more in apps. What’s even more exciting is that Apple now allows developers to decide if they want to reset their reviews when uploading a new version of an app. Believe it or not, some developers would allow bugs to go unfixed for weeks if they had high ratings for their app to avoid having the ratings potentially drop. Now hotfixes are much less stressful for brands and developers as they can effectively push out several builds of an app and retain their ratings and reviews.

Check back for more updates as these new features and tools become available. In the meantime, please feel free to contact us with any other questions you may have.

June 5, 2017

5 Key Takeaways from the WWDC 2017 Keynote

Apple’s World Wide Developers Conference (WWDC) is the tech giant’s biggest event of the year. It kicks off with a keynote where all the device and software updates for the year are unveiled and the rest of the week is spent training developers in attendance to leverage the latest features and API’s Apple has to offer.

While there was no shortage of announcements at this year’s keynote, we’ve picked the top 5 that we’re most excited about and that we believe will have the biggest impact on brands.

Preview of App Drawer in iMessage at WWDC

Quick-Access Drawer for iMessage Apps

Following up from last year’s addition of app extensions in iOS, Apple has now made it easier than ever to access and use iMessage Apps. There will now be a tape of apps featured below the text box in iMessage to quickly select which app you would like to use. This is great for users, but it's even better for brands. Users will be more aware of extensions and can use them faster than before – meaning they’ll also be looking for new apps to use in conversation. Since there is an app store specifically for iMessage extensions, your app is much more likely to be discovered. If you didn’t have an iMessage App before, now might be the time to consider it.

Apple Pay slide during WWDC Keynote

Apple Pay

50% of businesses across the US will soon accept Apple Pay. And we don't expect this trend to slow down anytime soon. Before the end of the year, its likely that businesses that do not accept Apple Pay will be in the minority. However, software is just as important as hardware. Apple announced that the App Store, which has now passed 180 billion in app downloads, has paid out more than $70 billion to developers and 30% of that is from the past year alone. There’s no longer a question of whether you should adopt Apple Pay in your app or in your store, but an imperative to implement both and as soon as possible.

WatchOS native core bluethooth support showcase

WatchOS 4

Apple announced today that there will be a number of new watch faces and workout options for the Apple Watch. What caught our attention was that Apple also added native core Bluetooth support. This may not sound particularly exciting, but we think it is. This opens up a number of opportunities for connected devices and is one step closer to making the Apple Watch a fully connected health and fitness ecosystem. For example, a glucose monitor could be connected to monitor blood sugar levels without having to manually add each test or you could connect a smart tennis racquet to more accurately track your swing. This integration could mean big things for brands, especially those that have already adopted the Apple Watch and are looking for more ways to connect with consumers.

Star Wars VR demo for Metal at WWDC

Metal 2

Metal, Apple’s graphics API, got an update this year – and it’s a big one. Apple not only improved the performance of the API, they added several new applications for it. Metal can now be leveraged for machine learning, it can take advantage of external graphics cards and hardware, and can now even power VR experiences. So, whether you’re playing a game or developing one, creating stunning art or rendering a CG short, Apple has new and improved tools to make it easier and export faster than ever. While gaming and entertainment brands will primarily use Metal 2, any brand looking to add polished animations or visuals to their apps will benefit as well.

Using AR live at WWDC


As Apple stated, ARKit will be the largest AR platform overnight. Apps such as Pokémon Go and Snapchat had to develop software that could take what the camera saw and place objects in the real world accordingly. It might sound simple, but its actually quite complex.  Not only does it require immense computing power, but it also leverages complex algorithms to assess the space, as well as the distance of objects from the camera, lighting, etc. Instead of having to develop environmentally-aware software to dynamically place computer generated objects in the real world, ARKit takes care of the heavy lifting so developers can focus on the content. Brands can leverage ARKit for everything from expanding the components in an engine to inspect every element to allowing kids to take a photo with their favorite character from a movie.

June 2, 2017

WWDC 2017: What We’re Excited About

Just as our Rocketeers are coming down from Google I/O fever, Bottle Rocket’s iOS Engineers are gearing up for Apple’s 2017 Worldwide Developers Conference (WWDC). We’re sending some of our Rocketeers to the event where they anticipate announcements regarding Siri and many other surprises that present and potential clients can use to grow their businesses and further connect with customers. We’ve asked some of our Engineering Jedi (our lead engineers) what they hope to see at WWDC this year. Here’s Russell Mirabelli, Ryan Gant, and Josh Smith with expert insight (and plenty of tech talk).

Apple’s Siri-enabled Speaker

As a potential competitor to Amazon Echo and Google Home, this speaker is rumored to be powered by one of Apple’s own A-series arm processors and run a variant of iOS. It is also thought to use some form of Beats technology and support AirPlay. Expected to carry a premium price, the speaker could feature high-end audio with one woofer and seven tweeters built in. If Apple does release its own smart speaker, our clients could easily leverage the code already written in their iOS apps and bring them into the home. This could be yet another platform our clients could utilize, as it opens up conversational interactions between brands and their customers.

Utilizing machine learning, or SiriKit, within an app could make the difference between having the next new thing, or having an app that'll be outdated and underused in five months. So, brands should watch for the addition of a Siri-enabled smart speaker closely, since there’s a pretty good chance Siri will get some improvements to support it.

SiriKit Improvements

It's a safe bet that we'll get quite a few new intent domains for SiriKit, which will bring Siri integration into many new applications. When Siri expands, it brings with it a whole new way for users to interact with your apps. Imagine asking Siri for something and your app giving you exactly what you want. There’s a good chance Apple will expand SiriKit to include more domains outside of the current Ride Booking, Messaging, Photo Search, Payments, VoIP Calling, Workouts, Climate, and Radio.

If these enhancements occur, we would be able to leverage Siri in both the speaker and on iOS devices in these ways for clients:

  • Order your favorite food with just your voice
  • Instantly play an episode of your favorite show just by asking
  • Determine the newest videos available on your favorite TV anywhere app (or what comes on tonight)
  • Ask Coca-Cola Freestyle to pour a saved mix by voice
  • Perform a search for a flight or hotel and book using only your voice

Developer Tools

Steel yourself—this is straight developer talk. Our iOS developers love new tools. We know what's next in Swift for this year because it's been developed in public, but it will be nice to have those updates rolled out to our developers. Object serialization being incorporated as a language feature has our iOS team excited—this will lead to more consistent code across all our projects.

And, of course, we're about to get some new goodies in Swift. Updates to the compiler will not only help with compile times but, with any luck, we'll also get more useful error messaging, which will increase development speeds and quality of life. Our Rocketeers would also love to see another one of Apple's main apps become more open to extension. Last year we saw a little opening into Apple Maps, and it would be great if they continued expanding that. Something else we hope for, but don't really expect, is easier keychain support. Some developers avoid storing data in the keychain because it requires some C-level API usage. Apple could revamp that interface for easier accessibility via Swift. This would serve all of Apple's users by ensuring that more apps protect user data.

One area that we might see some improvements is in the persistent caching of objects in a local store. Core Data, although powerful, is cumbersome to use in Swift, and writing your cache in a keyed archiver is prone to errors. It'd be fantastic to have a solid solution that's capable of adapting both NSObject subclasses and Swift structs into a lightning-fast storage file format.

This is exciting stuff! Is your brand ready for what may come from WWDC? Keep an eye on our blog for the latest from WWDC, or get in touch and share your vision for engaging your customers via mobile or voice.

May 30, 2017

Engineering Jedi: iOS10 – The 4s Awakens

With the introduction of iOS 10 in September 2016, Apple officially dropped support for the iPhone 4s, a device introduced nearly 5 years prior in October 2011. Following this news, iOS devs rejoiced! No longer would they need to continue supporting a device that was more than 5 years old and starting to show its age in terms of processing power, features, and available hardware sensors. Most importantly, no longer would they need to continue developing UI components and layouts that needed to gracefully adapt across four different screen sizes – 3.5”, 4”, 4.7”, and 5.5” – or so they thought….

Since the iPhone 4s couldn’t run iOS 10, it was easy to view that restriction as a blessing if you were creating a new app with a deployment target of iOS 10+. The UI could now be built to take advantage of the fact that your app would only be run using the 16:9 aspect ratios of the newer devices. Previously, it had often been very challenging to keep things simple when creating UI that looked good on both the smallest 480x320 resolution of the iPhone 4s and the largest 736x414 resolution of the iPhone 7+.

As you can imagine, this was our manner of thinking until just a few weeks ago when one of our client’s iPhone-only apps got rejected by Apple. The official rejection reason was that the app didn’t run at “iPhone resolution” when reviewed on an iPad. Specifically, Apple stated that the “app didn’t display properly” and referenced some screenshots attached to the ticket showing UI elements overlapping and running into each other. They also cited section 2.4.1 of the App Store Review Guidelines, which states that “iPhone apps should run on iPad whenever possible”.

It’s easy to forget that all iPhone apps can be downloaded, installed, and run on an iPad via the iPad’s “Compatibility Mode” feature. This was something that we did test before release, but only on the large 12.9” iPad Pro. The kicker here is that for all other iPad models, the iPhone app is run in its 3:2 aspect ratio. For the 12.9” iPad Pro, the app is run at the 16:9 aspect ratio that you get when you run the app on a 4”, 4.7”, or 5.5” device.

To correct the issue, we had to pivot quickly to adapt the designs and UI layouts to function properly on the 3:2 aspect ratio device. After again testing our iPhone-only app on three different screen-sized iPhones as well as the two models of iPads, we resubmitted the build to Apple and were quickly approved.

The unfortunate lesson here is that the 3:2 aspect ratio of the ancient 3.5” iPhones will continue to be a thorn in iOS developers’ sides for years to come. Our hope is that Apple eventually allows iPhone-only apps to run at the much more developer and user-friendly 16:9 aspect ratio by default on all iPads, not just the larger 12.9” iPad Pro. If Apple ever makes this change, then we can truly stop worrying about designing for the 3:2 aspect ratio devices when supporting the latest version of iOS. Until then, continue to develop your UI for iPhone-only apps such that it runs properly on all four iPhone screen sizes.

November 21, 2016

Develop for the Future: Reducing Technical Debt

When we say “develop for the future”, we do not mean that you should develop apps that will be useful in the future – we mean to develop apps that are ready for the future. By watching for trends from platform providers, such as Apple and Google, and selectively adopting new development guidelines and features as they are announced, your app will be prepared for future releases. Getting an application ready to ship on a short timeframe or otherwise is great, but if you rush, cut corners, or do not plan for later updates, something as simple as a new OS release could cause major problems. A little extra time spent implementing these changes and ensuring everything is "as it should be" in the present can, and usually will, save a lot of time and money in the future.

To better understand the importance of preparing your app for the future, we’re going to take a look at a few past updates and announcements that resulted in full-blown initiatives – features that seemed almost trivial at the time, but are now practically platform standards.


Size Classes on iOS

Size classes originally appeared for iOS 8 in 2014. These classes worked with Auto Layout to provide a UI that would work properly no matter what the screen resolution was. This was a pretty significant departure for iOS, as that platform had previously enjoyed a very small number of screen size variations, which made it simple to design to a fixed size. There was some initial resistance from the community; after all, even though size classes existed, we could still design for the phone sizes. With the introduction of multitasking on the iPad in iOS9, however, the value for size classes became more apparent. Size classes allowed developers to build a UI that would work well even with the unpredictable configurations of a changing screen size. By paying attention to size classes when they first appeared in 2014, developers could be more prepared for changes that appeared in 2015.


Google Screen Size Buckets

In July 2011 Android 3.2 introduced screen size buckets. These buckets include constraints like a shortest width demarcation. This was just after the launch of Honeycomb when they realized that tablets were much more varied in size than phones and indeed phones were getting pretty big as well. The existing buckets like "normal" and "large" were too vague and didn't carry a guarantee of a physical size for developers. The shortest width buckets were based on the physical size of the screen measured in density independent pixels which are roughly 1/160". The next year saw the release of the 2012 Nexus 7 which sold like wildfire and popularized the 7" format. Now in 2016 we see multi-window multitasking where two apps are shown at the same time. A 10" screen size might be displaying a phone-sized UI. If you took the hint with the new buckets, you were in good shape for both events.


Android Apps on Chrome

At Google I/O 2014, Google quietly announced an effort to get Android apps onto the Chromebook. The first demonstration partner for this was the Evernote app. It wasn't a great experience and it was a little clunky. Fast-forward to 2016 and now publicly available Chromebooks run native Android applications right out of the box. Google has largely combined its tablet efforts with the Chromebook OS in something rumored to be called "Andromeda" a combination of the words Android and Chrome. Whether or not this name sticks, Chromebooks from several vendors are already capable of this type of functionality with 10" screens, capacitive multitouch, accelerometers, GPS and other sensors. These devices should behave like a lot like a full-fledged Android device and add the ability to take multi-window multitasking to a new level. Looking back at 2014, the reveal of Andromeda and first-class Android applications on Chromebooks isn't really a surprise.


Deep-linking and Google Assistant

Also announced at Google I/O 2014 were app-indexing and enhanced deep linking support. At the time this seemed to be related primarily to their desire to index the world's information and play a larger role in app discovery. That in itself is a strong reason to work on deep-linking your app and ensuring your website is set up properly for app indexing. Then at Google I/O 2016, they announced the creation of Instant Apps which would go directly from a search to taking action in a slice of the app. Also, Google Assistant can use these types of links to launch apps directly from chat. If your app and website aren't taking advantage of app indexing and deep linking, you are reducing your app visibility and ease of use.


Swift 3 and third-party frameworks

When we choose a third-party solution, including open-sourced solutions, we assume responsibility for maintaining those libraries. This has become an issue with the release of Swift 3.0, as some frameworks have been either abandoned or slow to update to the new language syntax. Since a project can't simultaneously use Swift 2.0 and Swift 3.0, you can end up with an unexpected level of technical debt as a result. The best solution to this is threefold: First, use as few of these as possible. Secondly, choose ones that have a significantly sized user community for the best chance that it's updated. Thirdly, if all else fails, truly understand how the framework works, so that you are ready to perform any language updates required. Note that this can occur with any language that gets updated, whether that's Swift, Objective-C, Java, or anything else.


Future-proofing is a process, not a feature - and is ultimately something that must be done on a consistent basis. This can only be accomplished by viewing one's apps as living entities – receiving regular updates, not only for features but to ensure they're taking advantage of the latest capabilities of mobile devices and mobile operating systems. By evaluating even the minor advancements of the platforms, one can see future opportunities and get ready to succeed with future environments without scrambling at the last moment.

Contact us today to learn more about future proofing your projects.

© 2020 Bottle Rocket. All Rights Reserved.