Connected Car Tech Preview: Apple CarPlay and PubNub
Rumors are swirling that Apple’s next big move is in the automobile industry. This doesn’t come as much of a surprise considering that a number of software companies have been investing in the otherwise dated, industrial automobile landscape.
For the last couple years, Google has been working on self-driving vehicles, and Elon Musk is revolutionizing the auto industry with the Tesla series of cars. It’s only fitting that Apple joins in.
At this point, the state of connected car support from Apple is minimal and proprietary, so we are cautiously speculating on the future may bring based on current offerings. One thing is for sure though; Apple is making moves to turn cars into the next class of connected object. Apple has an amazing talent for device integration. Accessing text messages from a mobile device is just the beginning. If there are any doubts of the Internet of Things trend, just look at the Apple Watch – an emerging class of daily object that Apple is connecting seamlessly to the rest of its product ecosystem.
Apple CarPlay is opening a new field which is bound to lead to an extended amount of developer activity; building software for cars and integrating existing software to be compatible and safe when driving.
In this article, we’ll cover what’s been done with Apple CarPlay, what the future holds, and where PubNub sits with Apple CarPlay and connected car as a whole.
Current State of Apple CarPlay And What We Can Expect
What Apple CarPlay is Providing Today
Apple CarPlay today is aiming to bring iOS to your car. It wouldn’t be a far stretch to imagine Apple contributing to the hardware of your car by adding sensors compatible with their devices, or simply contributing to existing car technology. The current state of Apple CarPlay allows you to add some apps to the dashboard of your car. In this mission, safety is a primary concern (to mitigate the effects of distracted driving).
Given the current developer parameters based on public reviews, it does not yet seem feasible to create new innovative apps for your car. The current landscape seems to encourage developers to make existing apps more compatible with driving. That is to say, it is not about sticking an iPad in front of the driver as much as it is making the interaction with existing Apps safe for drivers.
Existing apps for Apple CarPlay follow this pattern: Apple’s apps such as Maps, Phone, Messages or Music have all been integrated in order to interact with them thanks to Siri, and overall forcing the driver to have a safe ride while interacting with software.
Other companies have also integrated their apps with CarPlay such as Spotify, CBS Radio and more. Notice how they are mostly music-related Applications? Apple had started expanding some of its SDKs to integrate with Apple CarPlay when iOS 7.1 came out and revolved around the adding support for external media players.
Apple does not provide access to their CarPlay SDK to the greater public yet. If you would like to contribute and update your app to make it safer for drivers’ experience, Apple allows you to contact them and justify how your app will contribute to that safer driving experience.
What To Hope For In The Future
As Apple starts colonizing the dashboard of the connected car, one can only expect the company to increase their integration with the car’s hardware.
In some ways one could say it’s similar to what people are expecting from the Apple Watch. Not only does it allow one to access the phone’s capabilities in a more lightweight manner, it facilitates a new trend towards health-related applications. Adding a watch to your wrist allows Apple to interact with your body. With this reasoning, why wouldn’t Apple start interacting with your car’s “body”? Adding sensors, providing hardware which allows a car to connect to the internet and broadcast information even when the car is off are things we can hope for in a near future.
Today’s cars are on their way to be part of the Internet Of Things!
It seems like developers are seeing an early opportunity to get a place in this new market. PubNub allows developers to quickly create apps which communicate in real time with almost any other device that has access to the internet. Regardless of the language, or the device, PubNub will allow you to have your watch, your phone, your browser, your Raspberry Pi or Arduino device to interact seamlessly.
In light of the future, we will quickly review the “present” of iOS to see how PubNub enables you to build connected apps in Swift so you will have a head start!
What PubNub Can Do For You
There is an endless list of how having an connected car can make your life easier. What would you want your car to do?
- Give you health updates to your phone in real time
- Check out how the battery is dealing with the cold
- Send technical information to your favorite garage while you drive
- Record the heat in your car when you park under a warm summer sun
- Detect when you are getting close to your car using BLE and have your phone communicate with your car before you even take a seat
Think about it, you could have the phone automatically set itself to a silent mode, start the heat in your car before you even open the door, or maybe start the AC a couple minutes before you get to your car which was boiling in the sun.
By the way, you can check out how PubNub allows you to get the best out of beacons. They usually only allow one way communication, but PubNub allows you to get a full two-way communication while still optimizing battery life! Read more about it here: Make Smarter Beacons.
There are lots of things you could do, so let’s start looking into what doors PubNub will open for you.
Using PubNub For Real-time Applications
Imagine your car subscribing to a data channel as soon as it turns on. You could have a connected object listening for such an event and open your garage door for you, and turn off the lights in your house for example.
Thanks to this architecture, you can connect all types of objects regardless of their manufacturer.
We count on you to have creative ideas and change our daily lives thanks to PubNub. Let’s just get you started by helping you add PubNub to your project!
Add PubNub To Your Project
Let’s start by adding PubNub to your project. For that, Cocoa Pods is your friend. Check out their website for detailed information on how to use it. To ease out the for you, this is how your podfile should look like:
You can make sure you are using the latest version of PubNub here.
Use Objective-C libraries in Swift
The PubNub library is written in Objective-C, but we are coding in Swift. All you need to do now is to build a bridging header. Create a new Objective-C header in your project called YourProject-Bridging-Header.h for good practice, and type:
Now in your project’s configuration panel, go to build settings and scroll down to the “Swift Compiler – Code Generation” section. Set the “install Objective-C Bridging Header” to Yes and in “Objective-C Bridging Header” type the path from your project’s root directory to your bridging header. It’ll be something like “YourProject/YourProject-Bridging-Header.h”
That’s it! You are ready to roll!