Abbas Suterwala, Jan 24

Kotlin Techniques that Improve Your Android Code

Kotlin is a general purpose language. It compiles to Java bytecode. Kotlin is developed by the company JetBrains which makes IntelliJ IDE. This article covers techniques which make writing Android code in Kotlin efficient or easy. You can find the code for this article at GitHub Using Static layout imports in Kotlin One of the pain points of working with Android is when we want to use one of the views in the activity. We have to use the ‘findViewById()’ function and then type cast it to the appropriate view type. Kotlin takes a different approach: it lets you import all the views in your layout file. For example, suppose we have a layout file as below
Joyce Echessa, Jan 19

Using the YouTube API to Embed Video in an Android App

Joyce Echessa shows how to use the YouTube API to embed video into an Adroid App.
Theodhor Pandeli, Jan 18

Crash Reporting an Android App with Crashlytics and Fabric

Theodhor Pandeli looks at how the Crashlytics library, a part of Twitter's Fabric, can help identify common crashes in an Android app.
Chris Ward, Jan 17

Java-Free Android

Android finds itself in interesting times. Google has begun creating it’s own ‘premium’ versions of the operating system (OS), Cyanogen have ceased development, and many feel that Android will change name or shape in the near future. As the future of the OS remains uncertain, so does the language that developers use to develop for the platform. Traditionally developers have written apps for Android in Java, a language with a long established history and ecosystem, but that has always felt forced upon Android, lacking the most up to date features, and unwieldy for developers who come from different language backgrounds. In this article I will round up some of the likely contenders and see how easy, realistic and plausible it will be for them to replace the Java behemoth. The added bonus for some of these languages, is that you can often use to also target other mobile platforms. A long term solution for developers has been to use different techniques to turn JavaScript and HTML into pseudo applications. I wont include any of these hybrid options in this round up such as React Native, Cordova or NativeScript. I don’t want to begin flame wars on native vs hybrid app development, but in this article I am only interested in covering languages that could become ‘native’ code. Google took an interesting decision when deciding that Java would be the programming language to create apps for Android. Whilst it’s portable and popular, it also restricts developers as there is no official support for using ‘native’ and more efficient languages such as C or C++.
Chris Ward, Jan 17

Build Native Apps in the Browser with Configure.IT

Chris Ward looks at Configure.IT, a service that allows you to build native mobile applications in the browser.
Theodhor Pandeli, Jan 11

Retrofit, a Simple HTTP Client for Android and Java

Theodhor Pandeli covers Retrofit, an HTTP client Library from Square that helps Android and Java developers make network calls easier and quicker
Clay Unicorn, Jan 10

Using MeasurementFormatter in Swift

The MeasurementFormatter class provides formatted and localized representations of units and measurements. When catering to a global audience, you should present this data in local units. Suppose your app shows the end user a distance between two points. Assume that the distance is in imperial units: feet, yards and miles. When catering to a global audience, you should present this data in local units. Consider the following: The distance between New York and Paris is 3,626.81 miles In French, you would want to not only translate the string’s text, but also the measurement units therein contained: La distance entre New York et Paris est de 5 836,78 km Instead of attempting to write your own utility classes to perform these conversions, you should leverage the power of Apple’s Foundation. When dealing with distance measurements, MeasurementFormatter does great work with zero configuration. By the time the user installs your app, the user’s device has a default locale. Working with the distance measurement above, we can convert to the user’s localized standard:
Theodhor Pandeli, Jan 04

Integrating Stripe into Your Android App

In this tutorial I will show how to allow users buy products or services from your app, using Stripe. Stripe is one of the simplest way to manage your online products, orders, and payments. You can find the code for this tutorial on Github. In the end of this tutorial, users would be able to buy plan subscriptions. The first step is creating some simple plans. To begin with, login to Stripe (or create an account if you haven't already). Make sure that you are in Test Mode before creating the plans from the dashboard.
Hunter Jensen, Jan 03

IoT Predictions for 2017

To consider how far the Internet of Things (IoT) could take us, consider the example of comic book superhero Tony Stark (aka Iron Man) and his virtual assistant, JARVIS, an artificial intelligence. The name JARVIS is an acronym for “Just A Rather Very Intelligent System,” but is also an obvious hat tip to the idea of a human butler. JARVIS takes care of all the things a butler would — he runs Tony’s home, keeps an eye on his master’s health, and helps him with administrative tasks. But JARVIS can do much more than merely dim the lights at Tony’s command. He also controls his car and computers. JARVIS is like Siri on steroids, able to fulfill nearly any request once asked. Each year, IoT gets a little closer to JARVIS-level intelligence in real life. We’re excited about smart home gadgets like the very tech-savvy Samsung Family Hub Refrigerator, as well as personal trainer substitutes like the HOIST fitness machines. What will happen with this technology next year? In the next 10 years? To date, most of the buzz around IoT has concentrated on technology in the home. But will other spaces start to see the impact of IoT, too? How much is the phenomenon predicted to grow? Here’s what you need to know about where IoT might be headed.
Valdio Veliu, Dec 21

Volley, a Networking Library for Android

Valdio Veliu looks at Volley, Google's standard library for network requests that takes care of a lot of the hard work for you.
Mike Canarelli, Dec 20

Google's Interstitial Ad Penalty and Its Effect on Mobile Marketers

Last year, Google put digital marketers on notice that a deep freeze was coming for interstitial ads. Now, the search giant has officially put them out in the cold, a move that will open opportunities for marketers willing to create a better mobile experience for consumers. Starting January 10, 2017, Google will institute what some observers are calling a “pop-up penalty,” targeting ads that hide or gray-out most or all of a mobile screen. Websites displaying the intrusive advertisements on mobile devices may not rank as highly in search results. It’s a change that will leave a significant footprint; mobile use drives about 56 percent of consumer traffic to top U.S. websites, according to SimilarWeb’s State of Mobile Web in the U.S. 2015 report. The move isn’t exactly a surprise; in 2015, the search engine giant announced it would penalize websites that displayed interstitial ads prompting users to download an app. Soon after, Apple gave Safari users the ability to install ad blocker apps that would stop interstitials on iPhones and iPads. It’s important to note that Google will penalize a website in mobile search results only, which seems appropriate given the challenge of navigating the intrusive ads on screens as small as 4.5 inches versus ads viewed on a laptop or desktop. What’s more, interstitial advertising remains one of many signals the search engine uses to assess ranking. However, don’t expect these mobile pop-ups to disappear completely. If you’re a company using them for age verification, cookie usage, or paywall logins, Google won’t ding you in search results. It also won’t impose a penalty if your business displays mobile banners that are easy to dismiss and don’t take up a large amount of screen space.
Theodhor Pandeli, Dec 14

Integrating the Facebook API with Android

In Theodhor Pandeli's first post for SitePoint, he looks at integrating the Facebook API into Android apps for login, profile information and posting.
Valdio Veliu, Dec 13

Optimizing Battery and Data Consumption in Android

Battery and network data consumption are two core issues developers have to deal with when developing mobile apps. This is more of a concern in mobile technologies because smartphones have limited resources. There are two key points I will be focusing on this article: battery life and network data reduction. I will go through some tips and examples on how to save battery life and keep network consumption at its minimum. Optimizing battery life The hardware components that consume most of the battery are the CPU, sensors, and the screen. Sensors include GPS, NFC, Bluetooth, etc. Keeping this in mind is simple to determine what are some points for a developer to focus on while developing. Tasks like keeping the CPU utilization to a minimum required, minimizing the radio utilization and minimizing network operations are difficult to apply in many cases but are necessary to build a top of the line app. In the following sections, I will go through a few factors that have an impact on battery drain. Also, I will mention some tips on how to avoid or reduce battery drain. Carefully use Animations It is obvious that animations need a lot of processing power by the CPU and therefore consume a significant amount of power. According to the documentation, most animations look fluid at 30 frames per second. So, going over 30 frames can be a waste of processing power and furthermore, more battery. Another tip that comes from the documentation is to let the CPU sleep between animations. This is due to the fact that continuous animations lead to constant changes on the device screen. As I mentioned earlier the screen is one of the main factors of battery drain.
Hannah Levenson, Dec 13

Why Your App Optimization Is Lacking and You Don't Even Know It

This post originally appeared on Appsee. Hannah Levenson discusses the importance of app optimization and how to maximize optimization for your own app.
Design & UX
Daniel Schwarz, Dec 07

What is Adaptive Design? (And is it Different from Responsive Design?)

We all have an understanding of responsive design, but how does it relate to 'Adaptive design'? Turns out the answer depends on who you ask.
Theodhor Pandeli, Dec 07

What's New in Android Nougat

Android Nougat 7.0 is the latest official Android Operating System update and is currently available only on 0.3% of Android devices, including the Nexus 5X and 6P, and the Android One devices like General Mobile 4G. As with every update, Nougat brings many new features make users’ experience better, easier and more customizable. Let’s start with the new features of Android N: That square you see in the Navigation buttons now has a new use. If you double-tap it, you will switch between your two most used apps. It is the short form of tapping it once, then choosing the second app window. If you are using Google Docs but you need to check something on Chrome, just open Chrome, find that information and double-tap on the recent apps button that will take you automatically to Google Docs.
Hunter Jensen, Dec 06

6 Medical Apps Revolutionizing Healthcare

Smartphone apps put a world of valuable information at our fingertips, including information about our health. We’re not talking about the ability to Google diagnoses on your phone — the healthcare apps of today are incredibly advanced and are revolutionizing the way we engage with the medical world. Whether you’re a doctor, patient, or researcher, smartphone apps can no doubt provide fast, efficient, and convenient solutions for your medical needs. Apple officially entered the healthcare market in 2015 with the introduction of ResearchKit and CareKit. Those two software frameworks allow doctors and other medical professionals to create iOS apps that can be used to collect medical research data and help people better understand their medical conditions. ResearchKit allows the 700 million iPhone users worldwide to participate in medical studies — and the information gleaned from those studies is used by medical professionals to identify patterns and better treat patients. As well as allowing medical institutions to create apps that work for their research needs, ResearchKit launched five apps of its own, including mPower, an app that’s been used to conduct a large scale (10,000+ participants) study of Parkinson’s disease. That study has already provided researchers with greater insight into the condition.
Julian Motz, Dec 05

Building a Cross-platform Desktop App with NW.js

Julian Motz introduces NW.js, a framework for creating native applications using web technologies like HTML, JavaScript and CSS.
Tatsiana Levdikova, Dec 02

Using Color Schemes in Mobile UI Design

According to Kissmetrics, a product’s visual appearance is the number one factor influencing consumers’ purchasing decisions. Nowadays, it is common practice among marketing managers to hire color consultants to get assistance in determining a color (or colors) that would attract their customers. They understand that colors are an important marketing tool. Mobile app developers have many useful things to learn from them. The color wheel based on the three primary colors (red, yellow, and blue) has been used by artists for centuries. The first color diagram was developed by Newton 350 years ago. The color wheel used nowadays includes primary, secondary (green, orange, and purple) and tertiary colors (yellow-orange, red-orange, red-purple, blue-purple, blue-green, and yellow-green).
Elio Qoshi, Nov 22

Firefox OS post-mortem - Interview with Andre Garzia

I am happy to be joined today by Andre Garzia, a Mozilla Tech Speaker, Firefox OS book author and contributor at Mozilla for the past few years. At SitePoint we tend to cover cutting edge topics and keep developers in the loop about the latest happenings around the web. This time however, we will have a look back and talk about Firefox OS, which as you might have heard, was discontinued earlier this year. We will have a look at the things Firefox OS stood for, what impact it had on the web and what lessons we can learn from it. Elio: It’s great having you here Andre! Also thanks for taking the time to cover a few things about Firefox OS, which might be a rather difficult topic, as we have all been so passionate about it. Andre: It’s my pleasure. After all this time we can have a look at Firefox OS in a less biased way, I believe. Elio: I suppose. It would be great if you could tell me more about yourself at Mozilla and how did you get involved with Firefox OS in the first place? Andre: I was participating in a hackathon, on a brazilian campus party. They had these huge hackathons there lasting for many days. People basically camp there with activities 24/7. I went to that event alone, I didn’t have a crew to hang out with and a couple of days before that event, I went to a Firefox OS app day, where they explained the system and the API-s.
Wern Ancheta, Nov 09

Getting Started with Fuse

In this tutorial we’ll be creating a Hacker News Reader app with Fuse, a tool for developing cross-platform apps that runs on both Android and iOS devices.
Joyce Echessa, Nov 08

Creating a Backend for Your iOS App Using Firebase

Firebase provides all the backend infrastructure you need for your mobile app. This tutorial shows you how to integrate it into an iOS app. 
Mark Pedersen, Oct 19

Progressive Web Apps: Bridging the Gap Between Web and Mobile

Mark Pedersen takes a look at what progressive web apps are, their advantages and disadvantages, and reasons to consider building one for yourself.
Chris Ward, Oct 07

Developing Add-ons for Enterprise Apps like JIRA

Chris Ward looks beyond developing for Google Play and Apple's App Store to enterprise app stores, and their opportunities for better returns and support.