Ryan Harter

Freelance Android Developer

A Modern CI Server for Android

| Comments

As a freelance Android developer, I’ve gotten the opportunity to work with many different client environments when it comes to building and releasing Android (and other) apps. One of the things that I’ve learned over the years is the importance of a good build server.

Why CI?

Continuous Integration servers, or CI servers, are designed to checkout your code after each push and build your project, including any tests you might have. This allows you to be notified immediately if and when you commit code that doesn’t compile or fails tests. Especially when working in teams, this can offer increased reliability and peace of mind.

Using Custom Compound Views in Android

| Comments

On a recent client app, I ran into a situation where I needed an arbitrary number of EditText fields based on a selected value, where the user could enter people’s information. My initial thought was to put this logic in my Fragment, just adding EditTexts to a LinearLayout container as the selected value changes, but that bloated my Fragment, and didn’t allow for much reuse.

This was a perfect opportunity to encapsulate this interaction functionality in a custom view, which would be reusable throughout the app (required in two places so far), and would allow me to easily test the encapsulated functionality.

Customizing the ListView

| Comments

In the last post we created a basic Android project using Android Studio templates. While it’s great that we have a fully functioning master/detail style app, it does look a bit bare. In this post, we’ll change this by styling our list view, incorporating (sort of) real data to feed our list. We’ll make a custom adapter to drive our list with custom layouts, and introduce testing into the mix to ensure that our app continues to perform as expected.

At the end of this post, this is how your pet list will look. I’ve made a few stylistic changes from the original mockups to allow the imagery to really fill the content area.

Two Months With the Moto X

| Comments

Two months ago, after an unfortunate incident with my Nexus 5 and tile floor, I decided to hop off the Nexus train and get a Moto X. After years of using nothing but Nexus devices (starting with the Nexus S) this was a big switch that made me a little nervous.

"Moto X"

Since I buy all of my phones off contract, it wasn’t until Motorola offered a Today Show special that I was ready to drop the money. As soon as I could get the phone for the price of a Nexus 5, I was sold.

Creating an Android Project

| Comments

Note This is the third post in my Start to Finish series. Last time I talked about source control with Git.

We’ve talked about basic tools, and about source control, so now we’re ready to get into actually creating an Android app.

In this part of the series, we’re going to create a new project using Android Studio. Android Studio is Google’s Integrated Development Environment (IDE) that we will use to create our Android app. While it’s still in early preview release status, it will be replacing Eclipse as the main Android development IDE, so we’ll go ahead and just start there.

Let’s Get Started

Assuming you have already installed Android Studio, start it up and you will be greeted by a welcome screen, inviting you to create or import a project.

"Android Studio welcome screen"