Localytics hosted the latest MassMobile Mobile Developers Meetup on November 28th, inviting Boston-area developers and marketers to our new office for an evening of discussion and education on any and all mobile platforms. The discussion delved into new developer tools for Android 4.0 and iOS 6, detailed with best practices on backwards compatibility, some holiday app marketing best practices, the future of HTML5 and Windows 8 development, and an introduction to in-app messaging. Here’s a quick roundup of the discussion.
Android 4, Compatibility Libraries and You (Carter Jernigan, Yoni Samlan, LevelUp)
Since the release of Android 3.0, Google has had a consistent set of APIs on which they’ve been improving. The struggle is to write apps that support the majority of users without resorting to legacy and deprecated APIs that will force you to throw away your code in the future. Here are some compatibility libraries that function on 2.3 but allow developers to take advantage of Ice Cream Sandwich and Jelly Bean functionality:
- Fragments and Loader Code – backwards compatible to 2.3, this allows you to modularize your code instead of rewriting the same lines on every activity. Additionally, it allows you run code without writing to the UI thread, making the app interface run more smoothly.
- ViewPager – Stop using old-style Android tabbed browsing or iOS-style navigation bars at the bottom of the screen.
- NotificationCompat.Builder – Notifications for users that support the Ice Cream Sandwich-style design aesthetic but work on Gingerbread
- ActionBar – Get rid of your outdated legacy navigation structure. Not yet released as an official Google compatibility library, but there are viable 3rd-party libraries like ActionBarSherlock.
Check out Jernigan and Samlan’s company LevelUp and also Jernigan’s early Android app Locale, which won the first-ever Android Challenge and remains one of the most successful apps available on the platform.
iOS 6 Tools and Tips (Randy Dailey and Henry Cipolla, Localytics)
iOS developers tend to jump on the latest version of the OS faster than Android developers, according to Localytics’ CTO Henry Cipolla, thanks in part to the backwards compatibility and the new OS version’s quick availability across all preceding iOS devices. With that in mind, here’s some of the new elements of developing for iOS 6:
- Auto-Layout – Xcode’s graphical editor, known as ‘Interface Builder,’ has long been an easy way to lay out views. Historically, it dealt with absolute positioning, as all iOS devices had the same screen ratio. Now the iPhone 5 has arrived with more vertical screen, so absolute positioning no longer creates the seamless, universal experience it once did. Fortunately, Auto-Layout in the latest version of Xcode allows for relational positioning of elements – always placing a button 5 pixels above the bottom of the screen, for example. Devs at the Meetup have found that it is very easy to use, although doing auto-layout in code was described by one as “a nightmare.”
- Collection Views – Xcode’s old Table View “all grown up,” as Dailey describes it, this allows you to easily make a grid with differently sized products. It also integrates queueing and dequeueing of items, making tables containing thousands or millions of items possible to use without the hacking it once required.
- Passbook – Not yet widely used, despite Apple’s heavy marketing of it, Passbook solves, among other things, the concern of giving a server your unlocked phone to pay with services like LevelUp by giving devs hooks to display their QR codes on lock screen.
HTML5 – It’s the future… will it always be?
Members of the meetup were significantly less interested in HTML5 hybrid frameworks like Phonegap compared with meetups from earlier in 2012. One attendee used Phonegap to add Blackberry support to his app strategy without having to code natively for the OS.
HTML5 seems to have lost some of its lustre with the developers who attended the meetup as well. We called it a “few years out” at one of the earliest Mobile Developer Meetups several years ago, and while it has improved greatly on its earlier fragmentation issues, it still suffers from speed issues vs. native apps. It should be noted as well that Apple and Google both have it in their best interest to ensure that native apps remain a better experience to keep their respective app marketplaces dominant.
Windows 8 – What needs to happen?
Windows 8, however, may be changing the view of HTML5, as Microsoft aims to make it a native-class citizen by giving HTML5 apps the same access to Windows APIs as a native C# app. We had a Microsoft evangelist attend the meetup who posed one burning question to the developers: “What is it that needs to be different?” He noted that with Windows 8’s convergence between mobile and desktop, that critical mass should come quickly. Some responses from the crowd:
- You’re late – 2 competing platforms have come to dominate the market. There needs to be a compelling reason for both app developers and end users to switch to Microsoft’s mobile offering.
- The crossover element itself is concerning – the Windows 8 app store on desktop reminds many of the Apple Store for desktop, which has the same purchasing and browsing experience as the iOS App Store but which never took off. Betting on the success of Windows 8 feels like betting on the success of an app store that has to out-do the Apple App Store.
- Aggarwal noted that there needs to be an end-user uptick before developers get excited and start shifting resources to Windows development.
The good news for Microsoft is that, as Android developers in the audience noted, a few years ago Android was a distant afterthought in mobile development after iOS. Although it took some time, Android is now thought of by developers as an equivalently necessary OS to develop for. Windows may take the same amount of time to generate that much interest, but the path has been laid out by Android to some degree.
Monetization in apps is evolving
The discussion turned to how monetization is shifting from pay-per-download to in-app purchasing, subscription and ad-supported models. Several reasons were cited, including:
- The race to free apps is supported in part by the accessibility of app development – devs aren’t necessarily treating them like a business, but rather as a form of expression, and may release a free take on an existing paid app and enjoy seeing their creation used by millions.
- Piracy, particularly on Android, also impacts the viability of pay-per-install apps. When an app monetizes via subscriptions, in-app purchases, etc., an illegally installed copy can be just as viable monetarily as one installed via a legitimate app store.
- Localytics CEO Raj Aggarwal suggests not to limit yourself to a single monetization structure – paid doesn’t preclude in-app purchases, and ads don’t preclude subscriptions. “You may start with a free app and add multiple different forms of monetization as your app grows.”
At the end of the night, we took a minute and introduced the attendees to Localytics’ App Marketing Platform, which allows you to create automated, data-driven marketing messaging within your app. The developers were very interested, referring at one point to it as “predictive” messaging designed to maximize the ROI of app users.
If you’re interested in checking out our App Marketing Platform, contact us today.
Also make sure to sign up for MassMobile if you’re interested in joining us at our next meetup.