Main The Business of Android Apps Development: Making and Marketing Apps that Succeed on Google Play,...

The Business of Android Apps Development: Making and Marketing Apps that Succeed on Google Play, Amazon Appstore and More

,
0 / 0
How much do you like this book?
What’s the quality of the file?
Download the book for quality assessment
What’s the quality of the downloaded files?
The growing but still evolving success of the Android platform has ushered in a second mobile technology “gold rush” for app developers. Google Play and Amazon Appstore for Android apps has become the second go-to apps eco for today’s app developers. While not yet as large in terms of number of apps as iTunes, Google Play and Amazon Appstore have so many apps that it has become increasingly difficult for new apps to stand out in the crowd. Achieving consumer awareness and sales longevity for your Android app requires a lot of organization and some strategic planning. Written for today’s Android apps developer or apps development shop, this new and improved book from Apress, The Business of Android Apps Development, Second Edition, tells you today’s story on how to make money on Android apps.
Year:
2013
Edition:
2
Publisher:
Apress
Language:
english
Pages:
168 / 162
ISBN 10:
1430250070
ISBN 13:
9781430250074
File:
PDF, 5.10 MB
Conversion to is in progress
Conversion to is failed

Most frequently terms

 
0 comments
 

To post a review, please sign in or sign up
You can write a book review and share your experiences. Other readers will always be interested in your opinion of the books you've read. Whether you've loved the book or not, if you give your honest and detailed thoughts then people will find new books that are right for them.
2

Smart Home Automation with Linux and Raspberry Pi

Year:
2013
Language:
english
File:
PDF, 7.05 MB
0 / 0
New and improved guide, overhauled for today’s
Android indie and game app developers

Business of Android
Apps Development

The

Making and Marketing Apps that Succeed on Google Play,
Amazon Appstore and More
SECOND EDITION
Roy Sandberg | Mark Rollins

Download from Wow! eBook <www.wowebook.com>

For your convenience Apress has placed some of the front
matter material after the index. Please use the Bookmarks
and Contents at a Glance links to access them.

Contents at a Glance
About the Authors��������������������������������������������������������������������������������������������������������������xiii
About the Technical Reviewers������������������������������������������������������������������������������������������ xv
Acknowledgments������������������������������������������������������������������������������������������������������������ xvii
Introduction����������������������������������������������������������������������������������������������������������������������� xix
■■Chapter 1: The Android Market: A Background�����������������������������������������������������������������1
■■Chapter 2: Making Sure Your App Will Succeed��������������������������������������������������������������15
■■Chapter 3: Legal Issues: Better Safe than Sorry��������������������������������������������������������������31
■■Chapter 4: A Brief Introduction to Android Development������������������������������������������������39
■■Chapter 5: Develop Apps Like a Pro��������������������������������������������������������������������������������51
■■Chapter 6: Making Money with Ads on Your Application������������������������������������������������63
■■Chapter 7: In-App Billing: Putting a Store in Your Application����������������������������������������79
■■Chapter 8: Making App Marketplaces Work for You��������������������������������������������������������95
■■Chapter 9: Getting the Word Out������������������������������������������������������������������������������������111
■■Chapter 10: A; fter You Have a User Base������������������������������������������������������������������������129
Index���������������������������������������������������������������������������������������������������������������������������������141

iii

Introduction
Hi, it’s Mark and … I’m back! Some of you might remember the first edition of this work. I focused
on the very early part of the learning curve for new Android app developers—such as what to do
even if you have never heard of the Android operating system or marketplace. I demonstrated how
to download programs such as Java and the Eclipse IDE, and showed you a thing or two about
programming using these software tools. I also introduced subjects that are basic to marketing
anything, such as reaching a target audience, establishing your application’s “culture,” spreading the
word about your applications through various online and print sources, how to publish on Google
Play (then called Android Market), and what to do after your initial launch. For the most part, I believe
that I succeeded in my endeavor, but even more is required if you really want to establish yourself in
the midst of a crowded Android market.
For this second edition of the book, I teamed up with Roy Sandberg, an experienced Android app
developer. Roy talks about his experiences developing and marketing apps under his Sandberg
Sound label (www.sandbergsound.com). Roy also does contracting work for Android, so you might
want to contact him if you need a level of support that exceeds what this and other books can
provide. You can find his e-mail address on his website, www.sandbergsound.com. Roy also has a
background in communications theory, robotics, audio, and digital signal processing. Believe me
when I say that hairy technical problems make him happy! Roy knows the technical, business, and,
in some cases, legal issues encompassing the Android development process. He created a family of
apps that use clever sound-processing algorithms to do some interesting things. More importantly,
you’ll learn from his “boots on the ground” experiences with marketing his apps. He’ll let you know
what worked for him and, perhaps more importantly, what didn’t work.
As the author of the first edition of The Business of Android Apps Development, I am quite glad to
have Roy on board. As for this second edition, it is not really a sequel, but more of a redux. Just
so I can set your mind on the right track, this isn’t really a book on how to create that million-dollar
idea for an app or how to write all the code for that million-dollar app. Of course, creating and
programming that application is a necessary part of Android marketing, and we’ll give you some
guidance in that area, but building the application is only one essential step to creating an application
that will shine in the very crowded world of Android applications.

xix

xx

Introduction

This book focuses on how to navigate marketing in the world of Android, and what it takes to make
an Android app really shine. From the moment you first conceive of an app idea, all the way to
supporting an existing application, we’ll explain the best way to get things done.

The Purpose of this Book
It might be easier to explain what this book isn’t instead of going into detail about what it is. This is
not, at its heart, a programming book. Although we will give you a quick overview of programming
on Android, you will have to look elsewhere for all the details. Rather, this book gives a high-level
overview of all the considerations a developer must balance when bringing a new Android application
to market.
As far as programming goes, we will certainly point you in the right direction, so if you’re a beginning
programmer, this book is a great way to get oriented. We suggest you also check out some other
books from Apress:
nn Android Apps for Absolute Beginners, by Wallace Jackson
nn Beginning Android 3, by Mark Murphy
nn Pro Android, by Satya Komatineni, Sayed Hashimi, and Dave MacLean
nn Pro Android 2, by Satya Komatineni, Sayed Hashimi, and Dave MacLean
nn Pro Android 3, by Satya Komatineni, Sayed Hashimi, and Dave MacLean
nn Pro Android Web Apps, by Damon Oehlman and Sébastien Blanc
nn Android Essentials, by Chris Haseman
nn Learn Java for Android Development, by Jeff Friesen
It is essential that you as an Android developer continuously learn about the Android platform
(and programming in general) in order to stay current. However, just as important as the nuts and
bolts of programming is what to do once that incredible mobile app has been created.
Proper business planning, marketing, promotion, and advertising are the keys to success. If you are
in the business of making money from your Android mobile software, the information contained within
these pages is essential reading.

How to Use this Book
This book teaches you the business of Android app development, from the very genesis of your idea,
all the way through ongoing support of your published app.
nn Chapter 1: “The Android Market: A Background.” The smartphone revolution
has changed the way that we work and play. Android is a leader of the revolution,
and this chapter discusses the history of this open-source operating system for
smartphones and tablets. We also explain how Android has changed over time,
and discuss porting difficulties for programs written in other coding languages.

Introduction

nn Chapter 2: “Making Sure Your App Will Succeed.” As you well know, the
Android Market is flooded with applications, so you have to find out what
will set yours apart from the others. We discuss what you can do to create
a product that will be in demand and how to analyze the competition. A key
factor is using a business plan to see and correct issues with your strategy,
ensuring your app finds a market. Your business plan will involve thinking about
the problem you are solving, analyzing your competition, and determining your
target market. We also analyze the technical, execution, and market risks and
how to price your app to succeed. At the end, we share a checklist you can use
to make sure your app has what it takes!
nn Chapter 3: “Legal Issues: Better Safe than Sorry.” An eye toward legal
matters is a necessary part of the app-creation process. If you are not aware
of what is at stake, you should read up on what you need to do to protect
yourself legally because no one wants to be sued. We discuss personal liability;
incorporation; EULAs; privacy policies; and intellectual property, which includes
copyrights, trademarks, patents, licensing, and nondisclosure agreements. Like
Chapter 2, it concludes with a checklist so you will be prepared!
nn Chapter 4: “A Brief Introduction to Android Development.” As stated before,
this isn’t a book about programming on Android, but we do discuss the basics
of programming on Android including the Eclipse IDE, the Java programming
language, the Android operating system, and app deployment.
nn Chapter 5: “Develop Apps Like a Pro.” Professional developers don’t just hack
code; numerous techniques and systems are also used by pros to ensure that
their code is high quality. We discuss some of these techniques in this chapter.
If you’re a professional developer, this chapter is a basic review, but if you’re
new to development, it is an excellent backgrounder. We also discuss some
coding tips and tricks that you can use to help you along the way.
nn Chapter 6: “Making Money with Ads on Your Application.” Just because
you are giving away an app for free doesn’t mean that you can’t get something
out of it. Find out how to estimate revenue and what financial model to use
on your application. We also discuss the types of ads that can appear on your
application, including banner and full-screen. It is important to know how to
understand and analyze the reporting information to better estimate revenue and
uncover revenue trends.
nn Chapter 7: “In-App Billing: Putting a Store in Your Application.” In-app
purchases are yet another way for developers to make money on their Android
apps, including offering user subscriptions and virtual products. This chapter
describes when you will best benefit from in-app purchases and when you might
want to avoid them. We also discuss numerous online stores that provide in-app
purchasing capabilities. We go into particular detail of how to implement in-app
purchases with Google Play and the Amazon Appstore.

xxi

xxii

Introduction

nn Chapter 8: “Making App Market Places Work for You.” As an Android
developer, you have the benefit of multiple market places in which to sell your app.
We show you how your marketplace listing will attract users; what screen shots
to use; and how to create the appropriate icons, promotional graphics, feature
graphics, and videos to promote your app. We also tell you how to beta test in the
marketplace and discuss the ever-growing Amazon Appstore, among others.
nn Chapter 9: “Getting the Word Out.” Publicity is a necessary step before
getting your app out there in the world. You know the importance of publicity,
but we break it down into a number of options. You should develop a plan using
marketing techniques to get the word out about your app. We also discuss
how to do a SWOT analysis, advertising, public relations, free publicity, Internet
marketing, guerrilla marketing, trade shows, web advertising, mobile advertising,
and more.
nn Chapter 10: “After You Have a User Base.” After your app finds a user base,
your job as a developer is far from done. You might want to develop a system for
customer support, use Google Play Statistics, use Google Analytics, and even
A/B test. All these techniques ensure that your app stays relevant and continues
to fulfill the needs of your users.

Chapter

1

The Android Market:
A Background
Whenever anyone writes a book, he or she always has to be mindful of the audience. If you are an
experienced Android programmer, the technical portions of this book may seem quite basic. If that
is the case, we apologize in advance. We decided that because the book is about the business
of Android apps development, some of our readers might not have any Android programming
experience at all.
If you have no experience with Android, we’ll try to point you in the right direction. Everyone starts
with no experience at one point or another, and with technology this happens all the time. It is hard
to believe that the entire idea of using a mobile “app” is less than a decade old at this writing. Ten
years ago, if you were to talk about an “app” in that sense, people wouldn’t be sure what you meant.

The Smartphone Revolution
If you think about all the things you do on a normal day, whether it is checking your e-mail while
riding on the bus, surfing the Internet while waiting for another appointment, or running the latest
application, you’ll probably agree that smartphones are part of our daily life. We’re sure that some
of us who are Facebook and Twitter junkies wonder how in the world we lived our lives before
smartphones. The technology is now something that we really take for granted, especially because
most of the technology of cell phones as computers is quite new and constantly changing.
Historically speaking, the computer is a relatively new invention. The computer industry, now a giant
in all types of business, is less than a century old. The Turing COLOSSUS, which was the earliest
general-purpose computer developed during World War II, was designed to run aerodynamics
calculations. The discoveries of Bell Telephone’s transistor in 1947 and the integrated circuit,
developed by Texas Instruments and Fairchild Semiconductor in 1969, helped computers make
great strides during the 1950s and 1960s. Soon the IBM System/360 became the standard
institutional mainframe computer. Intel co-founder Gordon Moore famously predicted that the

1

2

CHAPTER 1: The Android Market: A Background

number of components in an integrated circuit would double approximately every two years.
Moore’s prediction has stood the test of time, and his simple statement has since been known as
Moore’s Law. Because integrated circuits could do more computations for the user with less real
estate, computers became smaller and smaller. The Z3 was a massive machine that took up nearly
an entire building. The processing power of this gargantuan computer is minuscule compared to
what we have today on the simplest of smartphones.
Through decades of advances in technology, computers became small enough to fit on a desk at
home or in the office. Soon the power of the desktop transitioned to the laptop, and computers
became lighter and flatter, easily transitioning from the desk to the Wi-Fi hotspot at the local
coffee shop.
As computer technology improved, so did that of cellular phones, leading to a mobile phone
revolution. Cellular phones were once a toy that only the rich could afford because they often cost a
few thousand dollars. There were phones such as the 1983 Motorola DynaTAC 8000x, and they were
a burden on their users because they weighed almost two pounds. There was a period when the
weight of cell phones worked against them, but they were very popular to have in the car during the
‘90s. Fortunately, phones such as the 1989 Motorola MicroTAC 9800X were light enough to fit in the
jacket pocket, and others, such as the Motorola StarTAC, became popular with their clamshell design.
The next logical step was to put more features on a cell phone than just phone and texting, and
they soon became “smarter.” Now all the power of being connected to the Internet was in the
palm of one’s hand. Ericsson was the first to call its phone a “smartphone,” and the Nokia 9000
Communicator had similar features and was driven by an Intel 386 CPU, the same CPU previously
used in Intel desktop computers.
Most tech enthusiasts remember when Steve Jobs unveiled the iPhone, a smartphone designed
with the consumer in mind. We ask a lot of our tech friends, “Where were you when the iPhone
was announced?” Tech enthusiasts remember when Jobs brought out his new toy, and how its
one-button goodness with its “apps” changed the mobile world forever.
The rapid development of smartphone technology in the last decade is explained by Koomey’s Law
(somewhat similar to Moore’s Law). Dr. Jonathan Koomey of Stanford University has shown that
the need for electrical power (battery capacity) halves every 1.6 years. This means that computers
don’t just get faster (owing to greater transistor counts) but they also get smaller and more portable!
Because the battery takes up less and less room on a smartphone, smartphones can pack a lot of
computing power into the remaining volume.
But the computing power is only half the equation. The other half is connectivity. Smartphones are
almost always online. Always-on connectivity creates amazing possibilities. The app store, a staple
of all modern smartphones, is a direct outgrowth of always-on connectivity.
Now we are in an age when we can do just about anything with our phones, thanks to the app
revolution. Just think about how businesses like Instagram have flourished with this new smartphone
age, something that wasn’t even possible a decade ago!
Every new technology creates new opportunities. As we mentioned before, the size of a computer has
decreased. With this decrease in size has come a decrease in the price of computers overall. The same
applies to smartphones, which are getting cheaper for the consumer thanks to contracted deals from
carriers. Today, many users in countries that can’t afford desktop or laptop computers have access to
smartphones, with mobile networks that take them to the World Wide Web and beyond.

CHAPTER 1: The Android Market: A Background

3

Though we can’t go to every place in the world and get a signal, that’s changing fast. In fact, even
today one in three people on Earth have Internet access, and many of them have access through
cellular networks.
According to the latest research from Strategy Analytics, the number of smartphones passed one
billion in the third quarter of 2012. This is a mere 16 years after the first smartphones hit the market.
Very few inventions have swept the globe so quickly.
This is great news for app developers. Smartphones have already changed the way we work and
play, but we’re sure there are many undiscovered ideas that clever app developers will unleash upon
the world.
And the good news for you, dear reader, is that Android is by far the most popular smartphone
operating system. In fact, in the last quarter of 2012, 70 percent of smartphone shipments were
Android phones!

The Beginning of Android
A lot of people hail the iPhone as the first smartphone, but as we mentioned before, it was not.
It was unique in its iOS operating system, and it may seem as if the Android operating system is a
mere imitation. However, work leading to the Android OS began long before the iPhone was released
to the public in 2007. Andy Rubin, known as one of the founders of Android (later acquired by
Google) had been working on smartphone designs since January, 2000. The company he founded
prior to Android was called Danger, Inc., which released the Hiptop (also known as the T-Mobile
Sidekick) in October, 2002, years before Apple released its first smartphone.
Andy Rubin, along with Rich Miner, Nick Sears, and Chris White, then started Android, Inc. in
2003. In Rubin’s words, there was tremendous potential in developing “smarter mobile devices
that are more aware of its owner’s location and preferences” (http://www.businessweek.com/
stories/2005-08-16/google-buys-android-for-its-mobile-arsenal). The company ran out of
money, but it had developed an open source operating system for mobile phones by the time it was
acquired by Google in 2005. Android worked rather discreetly on its mobile operating system for
about two years.
Google helped start the Open Handset Alliance (OHA), which is a consortium of a lot of
companies such as HTC, Motorola, Samsung, Sprint Nextel, T-Mobile, and other big names in the
telecommunications industry. This group eventually unveiled the mobile operating system that we
know today as Android. The first public beta of Android was released in November 2007, a mere five
months after the iPhone first hit the market.
Android and iOS are currently the two major players in the world of mobile phone operating systems.
Microsoft has only a fraction of the market with its Windows Phone 8 operating system, in spite of
some successful flagship phones from Nokia such as the Lumia 920. The BlackBerry market was once
significant, but according to comScore MobiLens, it accounts for less than six percent of the marketplace.
However, BlackBerry has recently released some new devices with a new operating system, and its
fortunes might change. In a sign of how important Android has become, the new BlackBerry devices
support a “Runtime for Android apps.” This is a series of tools that allow you to easily repackage
your existing Android apps to work on BlackBerry phones. We’ll get into this in more detail later in
the book, but rest assured, even if BlackBerry is wildly successful, you’re making the right choice by
developing for Android!

4

CHAPTER 1: The Android Market: A Background

Why Android?
Android is by far the world’s most widely used mobile phone operating system. If you want to reach
the most users with a single code base, Android is the way. As we just mentioned, you can even
easily get your app in front of BlackBerry users!
Android is quite simply crushing iPhone in user adoption rates. According to Strategy Analytics, in
2012 more than 3.5 Android smartphones shipped for every iPhone. Android has shown quite a lot of
growth. In 2010, 100,000 new devices were activated each day. In 2011, 500,000 new devices were
activated each day. According to Google chairman Eric Schmidt, as of April 2013 there are more
than 1.5 million new Android users every day!
Even better, Google Play, which once lagged behind the Apple App Store in revenue, is coming
into its own. Google Play revenue grew by 90 percent in the first quarter of 2013 relative to the last
quarter of 2012. In the same time period, Apple’s App Store revenues grew by only 25 percent.
Particularly in Asia, Google Play revenue growth rates are astounding. Japan has surpassed the
United States in Google Play revenue! South Korea is also incredibly strong. At these growth rates,
it seems like only a matter of time before the Google Play store becomes the dominant app store.
In terms of the marketplace for apps, Google Play currently has more than 700,000 applications,
which have been downloaded more than 25 billion times!
Most successful Android application stories are pretty well known. As an example, Angry Birds by
Rovio is free for Android users, and it is a mobile game giant that has produced massive funds for
the company. The mobile game had more than two million Android downloads in the three days after
its Android release, and seven million Android downloads one month after that. Rovio, the game’s
developer, is still finding ways to make money on the Angry Birds franchise with spin-offs and even
merchandise.
Of course, there are more successful applications than just the ones made for gaming. For example,
Edward Kim, the author of the Car Locator application, was initially excited to be making $20 per
day. Within five months, he was making more than $13,000 per month in sales.
You will soon discover that the massive quantity of Android applications on the market can work
against the developer, as the Android market is flooded with applications of all types. It’s not
uncommon for 20,000 new apps to appear each month.
This means that one application, as great as it might be, can get “lost in the crowd” and become
very difficult to be noticed by its intended audience. Android users might pay to download one type
of application even though a free one with more features is readily available. All this because some
of the better applications can’t get noticed in the world of many, many Android applications.
Keep in mind, however, that the Apple App Store has roughly the same number of apps as Google Play,
so iOS application developers have the same problems when it comes to standing out from the crowd.
Remember, unlike Apple, Google built its brand on the strength of its search abilities. You can be sure
that engineers at Google are hard at work figuring out the best ways to provide Google Play users with
search capabilities that let them find exactly the app they’re looking for.
In fact, Roy is happy to report that searching for his apps in Google results in first page listings
(see Figure 1-1).

4

Download from Wow! eBook <www.wowebook.com>

CHAPTER 1: The Android Market: A Background

5

Figure 1-1. A screen shot of the Google Play Market that shows Roy Sandberg’s app

Android vs. iOS
When the iPhone was first unveiled, a new sort of business model was established for consumer
electronics. Although Steve Jobs and his associates at Apple were not the first to invent the
touchscreen, they were able to create a new type of software enterprise that was personable and
utilitarian. Apple’s “there’s an app for that” slogan has promised users that the mobile software they
need should be readily available where and when they need it. It works for the smartest engineer and
the dumbest consumer, and it created a new type of software market. Historically, the Apple App
Store has led the way by a wide margin in terms of number of apps and downloads. That, however,
is set to change. The Google Play App Market has nearly reached parity with Apple, both in terms
of the number of apps and the number of downloads. As of October, 2012, iOS had only 10 percent
more downloads than Android.
Although iOS still has a sizable lead in terms of total revenue, that gap is also closing fast. If the
trend lines continue at their current pace, Android could surpass iOS in total revenue by early 2014.
In the near future, we can expect Android to take the lead in terms of total apps, app downloads,
and app revenue. If we were betting types, we’d place our bets on Android!

6

CHAPTER 1: The Android Market: A Background

The Difference Between Android and iOS
As a developer, you should know how Android compares to iOS at least at some level.
Apple’s iOS is a proprietary operating system, while Android is open source, which gives users the
right to study, change, and improve the design through ready availability of the source code. Internally,
Android uses the Linux kernel.
One of the great things about Android developer tools is they are free. This is one of the reasons
why the operating system is so popular on smartphones and tablets, and why it will probably have a
significant presence on televisions in the near future.
Another way that Android differs from Apple is that Android has no approval process when it comes
to apps placed in Google Play. Once the user has signed up, uploading and publishing becomes
a relatively simple process. Remember how we mentioned earlier that the Android marketplace is
crowded with many, many applications? A simpler approval process does mean that substandard
applications can be prominent in the market. This is what makes a single quality app hard to notice.
On the other hand, there are many app stores other than Google Play that an Android developer can
select from. Many of these app stores have a more involved approval process. For example, Roy
has seen very good results with the SlideMe store, which although much smaller than Google Play,
currently results in more than 15 percent of the downloads for one of his apps.
Android apps are written primarily in Java, and Java is extremely well known. It is the most popular
language in the langpop.com normalized comparison of computer languages. Open standards
mean lots of open source. Java is the third most popular language on Google Code (langpop.com),
which gives you an idea of how much new code is being written for it. Java also has the largest
addressable user base of any smartphone operating system. It is easy to write, easy to test, easy
to deploy, and has worldwide reach in multiple marketplaces. Both Google Play and the Amazon
Appstore are thriving marketplaces for apps, and there are others that we will discuss in later
chapters when we discuss putting your applications on the market.
BlackBerry applications are a new market for Android apps. It’s easy to port an existing Android app
(v.2.3.3 or later, with an update to Jelly Bean 4.1 forthcoming) to the BlackBerry platform.
The Android application programming interface (API) is very well documented, and most users
come up to speed very quickly. In comparison, iOS is known to have a steeper learning curve. iOS
applications are usually written using Objective C, which is rarely used outside of iOS development.
In comparison, Java is a very well-known language, which makes Android easy to learn for existing
Java developers.
For example, Roy knew some basic Java before writing his first app, and he was able to write a
complex multithreaded application in only a few weeks. Most of the learning curve relates to the
Android application life cycle, which is rather different from PC or server-side Java programming.
But once you understand this life cycle, it promotes easy code reuse and allows you to tap into the
power of applications written by other developers. The Android application life cycle also promotes
the development of energy-efficient applications that “play nicely with others.”
But the ways that the Android ecosystem makes app development easy extend past the logistics of
programming. As a novice developer, Roy was also impressed with the ease with which he was able to
access an international market. His first commercial app, the Sandberg Sound BPM Detector, allows
a user to determine the beats per minute of any song it hears. It’s used by both DJs and musicians
around the world. With a few clicks, Roy was able to deploy the app worldwide. What’s even more

CHAPTER 1: The Android Market: A Background

7

impressive is that written text describing the app was automatically translated to dozens of languages.
Users who have no knowledge of English see Roy’s apps listed in their native language, and the apps
can display their text in the user’s native language as well. Similarly, the Android ecosystem takes
care of the logistics of international banking and purchasing. Once Roy selected an app’s price in
U.S. dollars, Android automatically suggested pricing in native currencies around the world. Even
though his apps are listed in 190 countries around the world, purchases appear in his bank account in
U.S. dollars, without any intervention on his part. Such is the power of Android.
Free third-party tools also make Android easier to use, even for non-Java programmers. Scripting
Layer for Android (SL4A) allows Ruby, Python, Perl, JavaScript, and a number of other interpreted
languages to run on an Android device. They have access to most of the Android API and don’t require
a developer to follow the application life cycle. If your app is best implemented as a simple script, this
might be the way to go. Currently SL4A is in alpha, but it has been under development for many years.
If you’re a Ruby programmer, you could check out Ruboto (www.ruboto.org). Ruboto uses the JRuby
compiler (which translates Ruby to Java virtual machine code) to convert Ruby language code
into Android application code. Because JRuby supports just-in-time (JIT) compilation, Ruby code
generated by Ruboto is quite fast.
So we think Android is the easier platform to develop on. But don’t just take our word for it. In a
Developer Economics 2013 Survey of 1,200 app developers who develop for both iOS and Android,
the majority stated that Android development had both an easier learning curve and a lower
development cost than iOS.

Versions of Android
Android got off to a slow start with the HTC Dream (also known as the T-Mobile G1). Since then, Android
has been gaining popularity with the release of every new version. It is important that you know about
them when you begin developing Android applications because newer versions contain more features
than their predecessors. In terms of programming, these versions have a definite numerical designation.
We will discuss that when we get into downloading Android development tools like Android SDK and
Eclipse. For now, you should know that in addition to the version number, versions also have an informal
name that is always a sweet treat. This cute tradition began with version 1.5.
Jelly Bean (4.1 - 4.2)
32.3%

Ice Cream Sandwich (4.0.3 - 4.0.4)

Honeycomb (3.2)

23.3%

1.4%
3.1%

Eclair (2.1)
Froyo (2.2)

34.1%

Gingerbread (2.3.3 - 2.3.7)

Figure 1-2. Percentage of the Android universe using each platform version

8

CHAPTER 1: The Android Market: A Background

Here is a very basic summary of some the latest versions of Android:








Version 1.5 (Cupcake):


Allows for video recording through camcorder



Bluetooth enabling



Widgets on homescreen



Allows for animated screen



Uploading of YouTube videos and Picasa photos “on the fly”

Version 1.6 (Donut):


Features a camcorder, camera, and Integrated Gallery



Voice Search



Voice Dial



Bookmark



History



Contacts Search



WVGA screen resolution



Comes with Google turn-by-turn navigation

Version 2.0/2.1 (Éclair):


HTML5 and Exchange Active Sync 2.5 support



Improved speed



Google Maps 3.1.2



MS Exchange Server Integration



Flash for Camera



Bluetooth 2.1 integration



Option of virtual keyboard

Version 2.2 (Froyo):


Screen is 320dpi with 720p



JIT compiler



Chrome with JavaScript Engine version 8



Wi-Fi hotspot tethering



Bluetooth contacts sharing



Adobe Flash support for version 10.1



Apps can be installed on expandable memory like SDcard

CHAPTER 1: The Android Market: A Background











Version 2.3 (Gingerbread):


Improved gaming graphics and audio effects



SIP VoIP support



WXGA (Xtra large screen size and resolution)



Near field communication



Copy-Paste feature



Download manager for large downloads



Better control of applications



Support for multiple cameras

Version 3.0, 3.1, and 3.2 (Honeycomb):


The first tablet-only release



3-D Desktop with newer widgets



Tabbed web browsing and “incognito” mode for anonymous browsing



Google talk Video Chat



Hardware acceleration



Multicore processor support



Multipane navigation

Version 4 (Ice Cream Sandwich):


Streamlined user interface fit for both tablets and smartphones



Advanced App framework



Facial recognition



Better voice recognition



Web browser with up to 16 tabs



Resizable widgets

Version 4.1 and 4.2 (Jelly Bean):


Google Now



Voice Search



Android Beam



Speed enhancements



Camera App enhancements with HDR

Version 5 (Key Lime Pie):


At present, we don’t know much about the features here; perhaps later
versions will keep us updated.

9

10

CHAPTER 1: The Android Market: A Background

You will discover that specific Android devices start out as one particular version of Android, and
upgrades tend to come out slowly for certain devices. This is because Android releases a new
version, and then hardware vendors and cellular carriers modify the source to meet their needs.
In fact, the cellular carrier might not even update older phones with a new version of Android even
though the hardware is most certainly capable of it.

The Challenges of Working with Android
We have already mentioned that some of the great things about Android developer tools is they are
free, and that Android differs from Apple in that the official Google Play marketplace has no approval
process when it comes to apps. Once the user has signed up, uploading and publishing becomes a
relatively simple process.
While Android apps are both relatively easy to develop and easy to deploy, there is no guarantee that
your app will work perfectly on every Android device. You can imagine users who have a phone that
your application won’t work on. You won’t be getting a recommendation from them!
Typical problems can include simple things like failure to format correctly for different screen sizes.
Even if you follow all the best practices, sometimes a phone uses a strange resolution. Your app
might still work, but the layout might be unpleasant to the user, resulting in a bad review.
It’s possible to test different screen resolutions using the free Android phone emulator. But this
emulator often runs too slowly for computationally expensive applications. Moreover, there are a few
bugs in the emulator that can cause certain apps to behave incorrectly when emulated. Although the
emulator is good for simple testing, it isn’t foolproof.
Another common issue concerns Android phones with different hardware capabilities. Not all
phones have forward-facing cameras, for example. Some phones don’t have the “horsepower” for
computationally expensive graphics. Every hardware manufacturer is free to add custom features
and capabilities to its phone, which means not every phone provides every feature. Android
provides the developer with ways to ensure that the phone has the features you need, but these
sorts of differences between hardware platforms are one of the major challenges of programming
for Android. The iPhone is a phone, but Android is a true operating system, supporting hundreds of
unique devices from dozens of manufacturers.
As a developer, you should always think about how to write an app in the way that reaches the most
users. Often, you are better off using an older version of Android than you prefer and avoiding the
latest snazzy hardware features. This lets you reach more users. Android has an enormous installed
base of users, but few of them are using the latest version.
If you get serious about Android development, you may want to buy a used Android phone or two
in addition to your primary phone (which we assume is an Android phone!). Developing an app that
runs on older versions of Android ensures that you can address the majority of the market. The
only sure way to know whether your app works well on multiple versions is to test them. If you’re
committed to developing quality apps, you will want to test your app on at least a few different
handsets.
Another option, if you can afford it, is to use a service like www.perfectomobile.com/, which allows
you to test against hundreds of real Android phones using a cloud-based interface.

CHAPTER 1: The Android Market: A Background

11

Porting Difficulties
For those who want to turn their iOS app into a full-fledged Android application (or vice versa),
we want to let you know the process and pitfalls. If you’re only focusing on the Android market, you
can safely skip this section. However, many developers aim to develop for both Android and iOS in
order to maximize their revenue. We will cover how to do that by the end of this chapter.
Let’s say you’ve written an iOS app that is out right now or perhaps waiting in the app approval
process. To turn it into an Android application, you have to adapt your software so that an
executable program can be created for a computing environment that is different from the one that it
was originally designed for. This is known as porting.
iOS apps are generally written in Objective-C, while Android apps are generally written in Java. Although
the logic of these programming languages is quite similar because they are both linear, procedural, and
use notions of object orientation (OO), they are very different with respect to OS support, GUI objects,
and application life cycle. Sadly, Objective-C is not supported on Android.
As far as we know, there isn’t any magical program that will allow you to put iPhone apps in and
get Android applications out (unless you use development tools that have this in mind from the
beginning). We will talk about cross-platform development tools later, but first we’ll explain what you
can do for both Android and iOS.
Although your iOS coding can’t be reused for Android coding, you don’t have to rewrite all your
Android code from scratch. For example, you can completely reuse the icons and images, as well
as any SQLite database code. Additionally, certain types of C code in an iPhone app (for example,
code for image processing or digital signal processing) may be directly utilized in Android using the
Android Native Development Kit (NDK). Although you might think that the user interface (UI) design
would be reusable, iOS and Android have different UI elements, and forcing an Android app to
behave like an iPhone app can be a time-consuming (and costly) endeavor. In some situations, you
may be able to reuse use cases that were written for iOS apps, but you should consider the impact
that the Android UI has on your use cases. Also, the Android ecosystem tends to favor free apps
with advertising or in-app purchasing more than iOS does. In other words, a change to the overall
business plan might be in order when porting to Android.
It usually takes nearly the same amount of effort to port an iOS app to Android as it does to create
it. It really depends on how big the application is, as well as the complexity of the code, reliance on
GUI tools, and ability of the developer.
By the way, there are people who make it their business to program apps, and that could lighten
your workload. Since your app already exists in one form, it’s easy to outsource application porting;
the developer can always use the original app as a reference.
If you have written your iOS app in ANSI C or C++, perhaps using one of the many gaming engines
that are designed for that purpose, then your task may be simplified. Android has the NDK, which
allows for ANSI C or C++ code to be called from the Android Java code and vice versa.

Examples of Cross-Platform Development Tools
Chances are you want your application to be downloaded as much as possible, which means you
probably want it to be on as many devices as possible. If you want to have your application on both
iOS and Android as well as other mobile platforms, you may want to use one of the cross-platform
development kits.

12

CHAPTER 1: The Android Market: A Background

Although we believe that the application market is headed toward a universal solution, we are not
quite there yet. This book focuses on the Android Software Development Kit (Android SDK) for
constructing Android applications. For completeness, however, we will discuss a few cross-platform
development kits, just so you know there are alternatives.

LiveCode
LiveCode is the work of RunRev, a company that creates development tools. In the words of Ben
Beaumont, product manager for RunRev, LiveCode is “a multi-platform element environment that
[has] now been moved to the mobile space.” LiveCode was originally made for Mac, Windows,
and Linux, and it boasts “compile-free coding.” Compile-free coding means that when you make
a change to your program, you will see it as you are programming. This is different from the usual
method of editing, compiling, running, and debugging.
LiveCode also has a visual development environment in which the user can drag and drop the
objects and images that will make up the final interface. The user can then attach scripts to these
objects to really bring them to life as well as lend them speed. LiveCode uses a very high-level
language, which allows the user to write in code that is very close to English. This allows users
to write in this code easily, and the code will be easier to read. All this enables the creation of live
prototypes that actually run on the device, and promises to make it easy to quickly iterate and
improve your application, because you can immediately see the results of your work.

Appcelerator
Titanium has created a free and open source application development platform that allows the
user to create native mobile, tablet, and desktop application experiences. Its Appcelerator program
allows the user to build applications full of features, as if they were written in Objective-C or Java.
The end results are native apps that are customizable with a lot of features, all built with the web
technology of JavaScript.
Appcelerator allows developers to concentrate on building the application and provides a toolset for
many platforms.

appMobi XDK
The appMobi mobile app development XDK is made for web developers, and it claims that if you
can build an application for the web using HTML5, CSS3, and JavaScript, then you can build it as
an application on the iPhone, the iPad, and Android smartphones and pads. According to appMobi,
developers can develop robust, 100 percent native API–compliant mobile applications in hours using
preferred editors, and write once and deploy to all target platforms.
The XDK includes an onscreen emulator with simple, approachable tool palettes to simulate user
interaction with a testing device. It also allows you to send your application project over a local Wi-Fi
connection or upload it to the cloud to test it from anywhere.

Note You will need Java 6 and Google Chrome 6.0 to run the appMobi mobile app development XDK.

CHAPTER 1: The Android Market: A Background

13

appMobi also offers a service known as MobiUs, which allows any app publisher to offer its app
from anywhere on the Web. This could mean the end of frustrating and complicated processes of
submission and approval to traditional app distributors (and also the end of developers needing to
share their profits with these distributors). It is also cloud-based, which means it is possible to create
iPhone apps on a Windows PC and Android applications on a Mac.

PhoneGap
According to its web site, PhoneGap allows users to build apps with web standards based on
HTML 5.0. PhoneGap users can also access native APIs to create applications for multiple
platforms, including iOS, Android, Windows, BlackBerry, webOS, and more. PhoneGap is currently
in version 1.0.0.

Summary
The Android application market has grown rapidly in the past few years. In the near future, it is
likely to eclipse the Apple App Store and become the largest source of revenue for app developers.
However, there are so many Android applications on the market that a developer really has to have
something very different and outstanding to achieve significant revenue. Beyond that, merely having
a great app isn’t enough. You have to make sure your app connects with the right users, and you
have to make sure your business case is sound.
Let’s see how to make your app stand out from the crowd and reach the right users with a
compelling business case.

Chapter

2

Making Sure Your App
Will Succeed
We’re sure you have heard the old cliché about how “Rome wasn’t built in a day.” If you want to
build a successful application, it might take several days, months, or even years, depending on its
complexity. However, we’re also sure Rome was not built without some sort of plan in mind, and
if you want to build your app empire, you will need a business plan that takes into account the
obstacles along the way of app-building.

Your App and a Business Plan
A business plan is a document that states the goals for a business, why those goals are attainable,
and how those goals can be achieved. There is no one set template for a business plan. If you are
planning to raise venture capital, you will want to consider a more formal approach than we are
going to suggest. However, most app developers won’t need to raise capital. So we’re going to
stick to an informal sort of business plan to help you vet your idea.
Why should you have a business plan? Perhaps the better question is this: what will happen if you
don’t have a business plan?
We explained in Chapter 1 that the Android world is booming. There may be hundreds of millions of
Android users, but in a world with hundreds of thousands of apps, it’s hard for one app to stand out
from the crowd.
While Android makes it easy to develop and publish your app, the bad news is that it is unlikely to
have significant sales without a carefully thought out and executed plan. A business plan will give
you critical insights into whether your application can succeed in the current Android market.
Perhaps you doubt whether you are smart enough to create a business plan and don’t think you can
foresee the conditions that will affect your Android application until it is too late. Yes, it is impossible
to foresee every possible variable that could affect the success of your application, but that’s exactly
why you need a business plan!
15

16

CHAPTER 2: Making Sure Your App Will Succeed

The biggest benefit of writing a business plan is that the process forces you to think deeply about
what exactly you are trying to accomplish. You get out of the process only what you put into it,
so don’t just skim over the next few paragraphs; open a text editor and start taking notes about
how this specifically applies to your app.

Download from Wow! eBook <www.wowebook.com>

Because you are probably not writing a business plan to submit to investors, we will focus on the
key factors that will help you see critical issues before you even start writing code. We’ll call this
condensed, simplified business plan a mini-business plan. Let’s break it down into seven parts:
1.

Identify the problem that you are solving.

2.

Analyze your competition.

3.

Determine the target market.

4.

Evaluate technical, execution, and market risks.

5.

Think about monetization and pricing.

6.

Estimate a schedule.

7.

Test your market demand hypothesis.

Think of the business plan as the oven that bakes your app idea to completion. Don’t start coding
until you’re sure your idea isn’t half-baked! Entrepreneurs (and writers) inevitably find themselves
making an elevator pitch, which is a capsulized way of pitching an idea as quickly as the duration of
an elevator ride. Hopefully, you can get your audience interested by the time the door opens on their
floor. As you work on your business plan, ask yourself how you would “elevator pitch” your idea to
your customers. This is a good gut check for your business plan.

Identify the Problem That You Are Solving
Here is the first rule about a developing a decent application: a good app solves a problem.
The question you should ask yourself is this: what can my app bring to the world? Even the simplest,
easy-to-learn games can cure the user of boredom, and a few levels of Angry Birds have made bus
rides or waits in long lines go by a lot more quickly.
Is your app a vitamin or a pain-killer? Vitamins are “nice-to-have” solutions that one takes if
they remember, but no one will ever run to in desperation. Pain-killers are the “have-to-have”
applications—the ones that we buy a smartphone or tablet to use.
If you have an Android device, we suggest taking it out and scrolling through the applications that
you have. Chances are that most of your recently used apps are pain-killers. The vitamins are often
those apps that you downloaded on a whim, but hardly ever use.
Clearly, our advice is to write an application that is a pain-killer rather than a vitamin. While gaming
apps are often vitamins, there are exceptions. The entertainment market can be fickle, but some
forms of entertainment are more of a pain-killer than others. If you are like Mark, you might even be
addicted to gaming apps. You can benefit from considering what problem your game might solve.
For example, will your game still be fun if played in short sessions? If so, it solves the problem of
short periods of boredom. Some games take a while to learn, and they might require a few hours
before a user truly enjoys them. You wouldn’t want to advertise a game like that on a local bus line.

CHAPTER 2: Making Sure Your App Will Succeed

17

Analyze Your Competition
Every idea, no matter how original, must compete with other ideas for mindshare. It is good to know
who your competition is before you set your app free in the world. If you can't figure out who your
competition is, you're flying blind.
Imagine if you built some sort of transporter that worked just like the ones in Star Trek. You might
think this idea is so original and important that it would dominate the market, making a competitive
analysis unnecessary. But what if it costs $10,000 per use? Even if the transporter can safely and
instantly get people to their destination, most people would still pick their favorite airline (or their
cars) for their domestic travel. But a competitive analysis would reveal that long-distance first class
business travel costs about the same, so that might be the best market to target.
Similarly, no one will want to use an application if there is already one on the market that does the
same thing (and, in some cases, does it better) at a lower price (or for free). In the world of apps, this
problem is even more acute than in other competitive environments. Popular apps appear higher up
in the Google Play listings, so existing favorites tend to become entrenched. You have to ask why
someone would use your application instead of a similar and competing application. Unless your
application is better, you will not displace the long-time favorites. In order to succeed, you have to
do what your competition is doing significantly better. Otherwise, you might want your application
to do something else.
There are many ways to learn about your competition, but at the very least you should be searching
the app stores for apps in your category. Read the reviews, try them out, and ask your friends to
give you feedback. You could even conduct a survey. You should also think more broadly about your
competition. Is there PC software that does something similar? What about an electronic gadget?
Your first goal is to get a sense of what is out there.
After you have collected some raw data, the best way to analyze your competition is to make a chart
called a competitor array. This chart should rank your business along with your competitors using a
number of factors. The factors are specific to your industry, but you can find a simplified example of
a competitor array in Table 2-1. Two turn-by-turn navigation apps are being compared on four factors.
Notice that the factors are weighted. It is up to you to decide which factors are most important,
thereby deriving the appropriate weighting. Once you compile this information, it can inform your
decision making regarding changes you will need to make before your app is competitive.
Table 2-1. Using a Competitor Array to Rank Two Mobile Navigation Apps

CompetitiveFactor Analysis

Weighting

My App Rating

My App Weighted

Competitor B Competitor B
Rating
Weighted

1 – Accuracy of Directions

.4

6

2.4

3

1.2

2 – Latency of
Turn-By-Turn Navigation

.3

4

1.2

5

1.5

3 – Cost

.2

3

.6

3

.6

4 – Server Latency

.1

7

.7

4

.4

1.0

20

4.9

15

3.7

Totals

18

CHAPTER 2: Making Sure Your App Will Succeed

Determine the Target Market
You might be concerned that your app will never stack up against the competition. Don’t worry!
We’re not saying that you have to create a new application category to succeed. Ideally, you will
find a target market that isn’t being adequately served by your competitors. By targeting that
market exclusively, you can appeal to customers who are being ignored by your competition.
If your analysis ends up being wrong, and the target market isn’t working out, don’t despair! Often,
with minor changes, you can focus your existing app on a new part of the market your competitors
aren’t concentrating on. Either way, by targeting a specific niche, your app will show up earlier in
searches specific to that submarket. You can then market your app as designed for that particular
submarket. In the previous example, suppose that the other mobile navigation apps had limited
capability to be used by bicyclists. Perhaps you could add features targeting the specific issues
faced by bicyclists. That would make your app the ideal solution, even if other turn-by-turn
navigation apps had much better performance for car drivers.
Let’s talk about how to determine your target market. You will discover that very few things have
universal appeal. Think about the films that you love, and you can probably find a person or group
of people who hate them. If you are smart, you will discover what kind of person will like your
application even before it is created.
Ideally, you want your product to be used by everyone, but this rarely happens in the real world.
It usually turns out that there is some particular market segment or culture that makes heavy use of
a product. Advertisers realize that and often cater their commercials or other forms of advertising to
this crowd. Think about all the ads you have seen, from the Super Bowl million-dollar ads to local
low-budget ads: they are always targeted to a specific crowd. If you can figure out what type of person
will be more likely to use your application, you have taken the first step of finding your target audience.
In other words, there is probably a specific type of crowd, whether scrapbookers, stamp collectors,
sports nuts, or any other type of enthusiast who would probably consume your Android application
more eagerly than the average consumer. This could be the most important question to consider
when deciding how to market your Android application.
As mentioned before, the Google Play marketplace has hundreds of thousands of Android
applications, so it takes a lot to make one in particular stand out. Think about how much time and
money it will take to reach your audience. If it takes more money to reach them than you expect
to make, you have a problem. We will explain exactly how to reach your audience in Chapter 9.
In short, you should determine to whom you are selling. Put yourself in the customers’ shoes, and
imagine what they’re looking for. Does narrowing your target group make it easier to reach them?
Does narrowing your target group make it easier to focus on their needs? Narrowing your market
isn’t a bad thing; it has many marketing advantages, and becoming a niche product is also a great
way to stand out from the competition.
In fact, most professional venture capitalists become worried when they hear that a company is
pursuing more than one market. It’s just too hard to focus on more than one type of customer when
you’re first starting out. If you have identified more than one target audience, you should strongly
consider just picking the best one of the bunch and focusing your initial efforts there.
Of course, you might worry that your target market is too small, but be sure you are thinking about
market size correctly. Say you are working on an app that lets people tune their kazoos. You would
probably assume that the number of kazoo-playing Android users is fairly small. But that’s actually

CHAPTER 2: Making Sure Your App Will Succeed

19

an incorrect approach when thinking about the market. The question isn’t how many kazoo-toting
Android users there are; the question is how many you can reach and how much they would be willing
to pay for a kazoo-tuning app. Imagine, for example, that there is a thriving kazoo special interest
forum that nearly every kazoo player frequents and it publicly laments the lack of kazoo-tuning apps.
In that scenario, you might actually have a very good market because it’s easy to reach. Nearly every
kazoo user would learn about your app if you posted there.
On the other hand, you might have a great app for people with cars, but have no way to let most of
them know about it. Considering that more than 95 percent of all American households own a car,
it would seem that your target market is large enough. But that high potential audience does not
necessarily mean a huge number of users. Do not ignore the difficulty of letting potential users know
about your app. Creating an app with a really clever feature is often enough to capture the interest
of journalists, and that allows you to reach users for free. We’ll talk more about that in Chapter 9.
Let’s talk about some factors you can consider when imagining what your target market might look
like. Naturally, you could start by thinking about basic demographics, which might include things
like age, location, gender, income level, education level, marital status, occupation, and ethnic
background. These factors can create an impression of a specific customer in your mind, but it’s
going to be very fuzzy.
Try to imagine your target customers in even greater detail. Think about personal characteristics
such as their personality, attitudes, values, interests, hobbies, lifestyle, and general behavior. Keep
thinking about this until you can imagine an archetypal customer. Is there an acquaintance you know
or a TV character that fits this description? Keep that image in mind.
Now imagine how your app will be used by your archetypal customers. How and when do you
imagine they would use your app? What aspect of your application would they consider to be the
most important? How will you reach out to them? Do they read newspapers or are they Facebook
users? Are they members of some sort of organization you could contact?
Now that you’ve narrowed your vision of your customer, make sure that your market is large enough.
Remember, sometimes it’s less about the absolute size of the market, and more about your ability
to reach them. But certainly there has to be enough people in the world to fit your description so that
you can reach your revenue goals. Of course, you need to be sure that your archetypal customer
can afford your app! And finally, you need to be able to reach them via some marketing technique.

Evaluate Technical, Execution, and Market Risks
Any time you want to do something, there is a risk. With every risk, there is a chance of failure, which
is a word we hate to hear, especially when our name is associated with it. We’ll let you in on a little
secret: fail fast. Evaluating risks ahead of time is a great way to determine where you might fail.
You can then decide whether the risks can be managed; if not, you can cut your losses early.
There are three reasons why you might fail:


Technical risk



Execution risk



Market risk

We’ll examine each of these risks in the following sections.

20

CHAPTER 2: Making Sure Your App Will Succeed

Technical Risk
Technical risk is the simple question of whether something can be done using the technology and
tools that Android provides. Hopefully, the technology is capable of doing what you want it to do,
but some apps push the limits. If you are writing a very computationally expensive app (one that
really hogs the processor), you should pay careful attention to this risk. Slower Android phones
might not even be able to run your app, and even the fastest phones will experience significant
battery drain if your app runs continuously. You might find similar technical risks when streaming
large amounts of data over the network. You should ask yourself whether slower network connections
will be able to handle your application. Other areas of technical risk include microphone sensitivity,
speaker loudness, and insufficient screen real estate or resolution. On a more general level, some
algorithms simply can’t be made to work in all cases. For example, very large vocabulary speech
recognition systems often run into problems. Visual object recognition apps might get confused
with certain objects. These sorts of issues need to be ironed out early in the development process
to avoid lots of wasted time and money.
If you have identified areas of technical risk, you should make sure to get a handle on these areas
before writing the full-fledged app. A simple prototype or even crude hacked-up software can often
give you a much better sense of whether the idea will work. Always strive to eliminate risk in your
business plan!

Execution Risk
Execution risk is a simple matter of whether you can accomplish what you set out to do. For
example, maybe your app calls for very complicated algorithms, but you are a novice programmer.
Maybe your app won’t succeed without high-quality graphics, but you’re not an experienced
graphic designer. Your app might be technically feasible, but you might lack the ability to implement
it without huge schedule delays. If you are a novice programmer, you should really get an expert
to weigh in on your plans. If you don’t have ready access to an expert, Roy, one of the authors, is
always happy to hear from fellow entrepreneurs. Even if he can’t help you himself, he might know
someone who can. You can contact him through his web site (www.sandbergsound.com). Remember,
often the things that seem easy only look that way because we know so little about the details.

Market Risk
Market risk is essentially figuring out whether the market will use your app in the volumes you
need to succeed. A very common problem faced by app developers is not being able to afford the
cost of advertising. If you’re selling your app for $1.00, but it costs $1.05 in advertising to make a
customer, you’ve got a problem. Although the cost of advertising varies depending on the medium
you use (Google, Facebook, magazines, TV, radio, and so on), you can make a back-of-the-envelope
calculation by assuming it will cost a few cents (nominally $0.05) to reach a reader via print media.
You can roughly estimate the same cost to direct a click to your web site. How many views or clicks
will result in a sale? Well, that’s impossible to say in advance, but if you have to guess, you shouldn’t
guess more than about 1 percent.
Fortunately, you don’t have to guess. Offer your product for sale on your web site and record the
number of unique visitors who express a willingness to pay (they hit the Buy button). You don’t need
to have your product ready to do this; just record the would-be buyers’ contact info and tell them

CHAPTER 2: Making Sure Your App Will Succeed

21

you’ll let them know when the product is ready. We’ll get into other ways of acquiring users besides
advertising in Chapter 9, but you should ensure that you have a strategy for reaching your audience.
What you shouldn’t do is think this way: “if I build it, they will come.” That might work for baseball
fields, but it definitely doesn’t work for apps. Placing your app in the Google Play store might result
in some people installing it, but you won’t get enough users for even modest success without
resorting to additional measures. One way to approach this problem is to think about the interests
of your users and how to use those interests to reach out to them. Is there an online forum in which
they congregate? Do they read certain magazines? Can you reach them using a viral technique
(friends of friends)? In short, if you can’t figure out how to reach out to your customers, you won’t
have a whole lot of them.

Think About Monetization and Pricing
A critical step in any business is pricing your offering. Customers always want to get something for
nothing, and there are many applications on Android that you can get for free. As a developer, you
can still make money with free apps by hosting ads. Or you can charge for your app. In fact, there
are a number of options available. It’s time for you to consider those options and evaluate which
choice makes the most sense for your app.

Paid Apps
You can just sell your application outright, and your application has a clear price tag. Remember
that most marketplaces take 30 percent of your listed price as their commission. You will have
to convince customers to shell out their money on the strength of your product’s description and
reviews, which is a difficult thing to accomplish without marketing. You can forget whatever dream
you have about putting your application on Google Play and sitting back and watching as your
profits rise. On the bright side, you don’t really have to update your app very frequently because
after users buy it, you don’t need to keep their interest; there is no additional money to be made
from them. Of course, you do want your users to give you a good review, so it pays (and it’s in
your best interest) to ensure that your application runs at a high level of quality without any bugs.
The difficulty is constantly exposing new users to your app. Although you’ll definitely get some
users who find the app when they search for the right keywords, in general you’ll need to find
ongoing sources of publicity in order to continue generating real revenue. For lower-cost apps,
advertising might not work unless your cost to acquire a new user is very low. If your app is very
specialized and can support a high price (say $10 or more), you can expect some success through
traditional advertising channels.

Free Apps
There might be no such thing as a free lunch, but there is such a thing as a free app. Most of us
don’t give away something for free unless we get something in return, however. So even if the users
might not be paying for the privilege of running your application, it is possible to make money on
it with advertisements.
You need to find a service that will pay you to put ads in your application. Usually you get paid each
time a user clicks an ad. We will discuss this more in Chapter 6.

22

CHAPTER 2: Making Sure Your App Will Succeed

In contrast with paid applications, you are likely to get many more downloads of free applications,
easily ten times as many or more. Unfortunately, you will typically make less money from each user,
at least in the short term. An ad-serving company (such as Google AdMob) will serve a new ad
periodically, perhaps every minute, although this is adjustable by the developer. Because any ad might
be the one that interests the user of your app, the more ads your application serves, the more likely
you are to get a click. What this means is that applications that the user will interact with for a long
time are well-suited to the free, advertisement-backed model. In contrast, if your app solves a very
important problem, but is only used once or rarely, you are probably better off making it a paid app.

Freemium Apps
A freemium app is a light version of your application that encourages users to pay for an upgrade. The
free version can even run ads. If you use this model, it should be clear to the user at what point he or
she will need to pay for the upgrade. Don’t disguise your app as being free and later surprise your user.
Of course, this can get complicated because you have to have two versions of the same application,
which means two applications need to be submitted to Google Play.
It can be difficult to determine where the cut-off point is between the free version and the paid
version. Angry Birds made its money because the free version had a few levels, but they were
enough to leave players begging for more. This is ideal; you switch from free to paid when the users
are hooked. That’s when they are more willing to part with their money.
Beyond that, simply building users’ trust with your free app makes them more likely to feel
comfortable enough with you to upgrade to the paid version. The key is that the paid version should
deliver a feature that users really want after they start using the app. You can often artificially limit
some capability in the free version, so it’s useful, but not quite enough for power users.

Services
This technique gets the users to pay for a particular service when they download your app. You, the
developer, may not even be the person providing the service, but you might make a certain amount
from the service provider for each time you connect a customer.
There might be a subscription involved, such as several applications on the Kindle Fire. The Kindle
Fire has a place for magazine subscriptions, but some periodicals, books, and even shows choose
to be an app that one subscribes to get the latest “issue.”
As this example illustrates, this monetization technique works best when the app is being used as a
vehicle to deliver some underlying capability, such as frequently updated content. Because app users
are very price-conscious, you need to convince them they’re getting more than a mere app. Few
users would agree to pay an ongoing monthly fee for an app that doesn’t provide real-world value.

In-app Purchasing
In-app purchasing involves getting a user to pay for certain features within the application. This is
big in games, where characters pay for larger guns, or even something seemingly superficial such as
different costumes. Another example is a translation app that is free, but forces you to pay for certain
language modules.

CHAPTER 2: Making Sure Your App Will Succeed

23

In effect, this monetization strategy is very similar to the freemium model in that the user gets the
app for free and is then convinced to pay for more features. The advantage of in-app purchases is
that a user could conceivably make multiple purchases over time; so for apps that get repeated use,
this could result in a continuous revenue stream from purchases.

Other Models of Moneymaking
Some of the best business models involve creative monetization strategies. If you think about it,
some mobile applications are just a means to implement a business transaction. eBay, for example,
offers a free application that is helpful for checking on the status of auctions. Anyone who has an
auction on eBay is paying eBay a small percentage; that’s the heart of its business plan. The eBay
application is helpful for on-the-go auctioning; it pays for itself by enabling more users to buy and
sell items more easily, which means more auction purchases occur.
Flywheel, Lyft, and Uber make money by giving users a way to hail transportation (taxis, shared
rides, or town cars) from their Android phones. The users don’t pay to download it, there are no ads,
and there are no services to pay for. So how do they make money? They charge the drivers for each
fare they pick up! Often, if you can insert your app between a buyer and a seller, you can charge
sellers a small fee, and they’ll gladly pay it because you’ve brought them a customer.
Although marketplace in-app purchasing libraries don’t support the sale of physical goods
(see Chapter 7), you can certainly link to physical goods from within your app. Whether this is via
an affiliate program (see Chapter 6) or just by a link to a product on your web site, you can certainly
leverage your app as a way to promote the sale of physical goods.

Estimate a Schedule
As we explained in Chapter 1, the Android open–source development tools are completely free.
But as the proverb says, time is money. Sure, you could spend a lot of time making the perfect app,
but who will pay you to do it? Also, if you do create this perfect app, what if someone else is doing
the same thing? Take the time to create a project schedule so you know how much time it will take;
it will give you a better idea of whether it’s worth your effort to get started.
You don’t have to use complicated charts or special software to make a schedule, although you
can if you want. The important point here is to take your idea and break it down into a series of
steps. Then take those steps and break them down further. When each step takes no more than
a day to implement, you have a decent schedule.
If you don’t know how long something will take, you have identified an execution risk (as discussed
previously). You should reach out to experts and see if you can get an estimate from them. They
should be able to break down the problem into a series of steps; if they can’t, they’re not the experts
they say they are. You can also have them estimate how long it would take to implement a solution
for you and how much it would cost. This can help you decide if you have a realistic grasp of the
complexities involved.
In many cases, you can write some pseudocode for your app and get a pretty decent idea of the
implementation complexity by breaking down each subroutine as far as you can and estimating
the lines of code per routine.

24

CHAPTER 2: Making Sure Your App Will Succeed

Bill Gates said, “Measuring software productivity by lines of code is like measuring progress on an
airplane by how much it weighs.” So it’s controversial to even bring it up, but some programmers like
to estimate that they can write 80 lines of quality code per day (fully tested, including unit tests). In
some cases, that might help you better estimate your schedule.
Your schedule shouldn’t be limited to just coding, though. You should also consider the time it will
take to develop content for a web site (discussed later in this chapter and also in Chapter 9). Time
spent on marketing and sales tasks should also be included. As you learn more about these topics,
you can revisit your schedule.
Even fairly complicated project schedules can be written down on paper or implemented with a word
processor or spreadsheet. However, if you are new to project management and want to manage your
schedule in a professional manner, you should consider using project management software. At a
minimum, project management software allows you to schedule your tasks so that the task duration
is automatically calculated, including days off. Complicated schedules with lots of moving parts
will benefit the most from this sort of software. Microsoft Project is practically the industry standard
software package for project management. Fortunately, you don’t need to invest in an expensive
Microsoft product to get started.
ProjectLibre is a free open-source alternative to Microsoft Project that runs on Windows,
Mac, and Linux. It offers many of the same features available in Microsoft Project and has user
groups all over the world where you can get help. You can learn more at its official web site:
http://www.projectlibre.org/

Testing Your Market Demand Hypothesis
There is really no way to test the success of an application without actually making, marketing,
and distributing the application. If only there were some way to put a fake app out there and see
how many people download it. Sadly, that is unethical, and you would receive terrible reviews and
possibly get kicked out of App Stores as well as the Android developer program.
Yes, it just isn’t worth that risk. However, you can do the next best thing by setting up a web site that
offers your app for sale. You’ll let visitors know your app isn’t ready yet, but only after you gauge
their reactions. If it turns out that there isn’t enough demand for your app, you’ve saved yourself a lot
of trouble, and you can just tell the folks who signed up that the project was canceled. Your web site
can be designed easily and at no cost with online tools. We discuss how to quickly set up your web
site later in this chapter.
Make sure that your web site includes a detailed description of your app, including (faked) screen
shots if at all possible. There are a number of online tools that provide a quick and free way to
prototype your user interface (UI), and your work doesn’t go to waste because you’ll use what you
made later. We will discuss these tools in the next section.
When writing the description and making the screen shots, you should be answering several
questions:


What assumptions have you made in the previous sections of your business
plan that you can test?



Can your description be narrowly focused on your target market?



Can your screen shot suggest the monetization strategy?

CHAPTER 2: Making Sure Your App Will Succeed

25

Beyond having a detailed description with screen shots, it’s very important that you offer the
reader an option to download the app. This option should also list the price of the app if it isn’t free.
By simulating the actual market conditions that real users would experience, you screen out people
who are merely curious and focus on real prospects.
When users try to download the app, you should direct them to a signup page. This page tells them
that the app isn’t yet available, but they’ll be contacted as soon as it is. If you include a field to allow
them to leave comments, you have a great way to get feedback from potential users. This is easy to
do with the free web site building tools that we will discuss in the following section.
After your hypothesis-testing web site is ready, you need to get some eyeballs to it. This is where
your initial work defining your target audience first becomes useful. You figured out how to reach
your audience, right? So post something on one of the (many) forums where your potential users
hang out, and get a few of them to visit your page. You don’t need many, but you do want to keep
track of how many people out there read your post, how many of them clicked through to your web
site, and how many reached the signup page. This will give you an idea of how popular your app is
with the target audience.
If you have more than one target audience that you’re deciding on, repeating this process for each
audience is a great way to pick the winner based on hard data. After you get some percentages
figured out, you can determine how many users you will get when you scale up and reach out to
a bigger audience.
The feedback alone makes this process worth it. It is one thing to have an idea, but quite another
when real people are telling you what they think about your idea. Often, you’ll find that you
understand your target audience a lot better simply by reading a few comments they have sent
you. Use all this information to determine whether you have what it takes to succeed. Remember,
often the idea you start off with changes dramatically after you make contact with your intended
target audience. Whatever you do, be certain that you’re listening to your potential customers.
Their opinions are the ones that matter.

Tools for Prototyping Your Screen Shots
When testing your market demand hypothesis, it’s important that your screen shots look as realistic
as possible. Fortunately, there are many tools you can use to prototype screen shots. If you
determine that your app’s future is promising, the work you put into screen shots will be time well
spent. In some cases, these prototyping tools can generate usable Android XML code.
There are numerous prototyping tools available online. Here are just a few you can pick from:


Fluid UI (http://fluidui.com): Fluid UI lets you quickly mock up your app
without worrying about code. Figure 2-1 shows an example mockup for Android.

Download from Wow! eBook <www.wowebook.com>

26

CHAPTER 2: Making Sure Your App Will Succeed

Figure 2-1. An example user interface mockup made using Fluid UI



Android GUI Prototyping (http://www.artfulbits.com/products/free):
If you’re a Microsoft Visio user, you might want to consider using this stencil.
You will need Visio 2003 or higher.



DroidDraw (http://www.droiddraw.org/): A web-based designer/editor/builder
for cell phone and tablet application programming on the Android platform.
Currently in beta, it even generates the XML file that corresponds to the UI
you’ve built. This is a big time-saver after you start writing code.



Pencil (http://pencil.evolus.vn/en-US/Home.aspx): Designed by the Pencil
Project, it is a free and open-source tool that can be used for graphical user
interface (GUI) prototyping. Pencil includes a stencil for Android mockups.
It comes as an application program that is available for Windows, Macintosh,
and Linux. It is also available as a Firefox extension.



Fireworks Template for Android (http://unitid.nl/2009/11/fireworkstemplate-for-android/): If you are an Adobe Fireworks user, you should
consider this template, which has the Android user interface elements redrawn
as vector images.



Android Wireframe Templates (http://gliderguns.files.wordpress.com/2010/
01/android_wireframe_templates3.pdf): If you’re just at the ideation stage and
want to play around with the overall idea, you can always use a

CHAPTER 2: Making Sure Your App Will Succeed

27

paper and pencil to get started. These wireframe templates help you produce
a more realistic layout. Actual Android phone illustrations are included for the
HTC Dream, HTC Hero, HTC Magic, HTC Tattoo, HTC Nexus One, and
Motorola Droid.
You may be considering creating an interface that is completely original. For example, you can go
really crazy and do something like a funky style of pop-up book; or something that is more than just
the usual bundle of buttons, pull-up menus, and finger swipes. You should be aware that the UI for
Android has a certain paradigm that, if violated, could break the user’s mental model and therefore
cause frustration. You need to have an excellent justification for violating standard design rules.
Proceed with caution.

Tools for Setting up a Web Site
To test your market demand hypothesis, you will need to set up a web site so that you have a place
to host your screen shots and app description. After all, you can’t place a fake app in a real app
marketplace!
Because entire books have been written about web site construction, we won’t go into great
detail about how to create a cool site. Just be sure that it looks professional. If your site looks too
amateurish, you won’t get a good read on the market demand. We’ve all visited sites that have
made a bad impression, and that impression affects our buying decisions. If you are new to web site
development, you may wish to use a service such as Weebly (see Figure 2-2) to set up your site.

Figure 2-2. Weebly is one of many free tools that you can use to quickly set up a web site

28

CHAPTER 2: Making Sure Your App Will Succeed

Although your web site must look professional, it doesn’t have to be highly developed. A few pages,
possibly even one page, are all you need. Just make sure that your site matches the nature of your
application. Here is where you can choose to include your icon, logo, screen shots, and any other
stylistic aspects of your application. You might want to go to Google Play and select any application.
Under each application should be a link to the developer’s web site, so you can see what they
look like. For example, Figure 2-3 shows the web site for the Waze app. The web page conveys the
essence of the app. Waze is an extremely well known app, but you’ll notice that the landing page is
actually quite simple. It won’t take very long to mock up your app’s web site to the same level
of completion.

Figure 2-3. The Waze web site

There are numerous tools you can use to quickly build a web site. For the purposes of creating a quick
site to test your business plan, we discuss only free online web-building software that hosts your page
for free. These tools allow you to design your web site for free and they don’t cost you a penny.
Also, we selected tools that don’t fill your web site with unprofessional-looking ads. Unfortunately,
they all include a small footer at the bottom of the page, but they’re not very distracting.


Weebly (www.weebly.com): Roy has had good results with Weebly (shown in
Figure 2-2), which he has used to host his own web site. Weebly is very easy to
use and offers a large selection of templates to choose from.
t

CHAPTER 2: Making Sure Your App Will Succeed



SnapPages (www.snappages.com): This site builder is simple and hassle-free, and
includes a number of web site templates.



Webnode (www.webnode.com): This one is free for personal web sites and has
hundreds of templates to choose from. You could always use a personal site to
host your market demand hypothesis, and its paid service starts at $4.95/month.

29

Your Baby Might Be Ugly
It always hurts when people are quick to criticize something that took so long for you to put
together. Like parents who have an ugly baby, developers often love their app in spite of a critical
world. It’s important to remember that even though you have given birth to a new idea, an app
isn’t a baby. A good entrepreneur can accept criticism. Sometimes, the facts just aren’t in your favor,
and your time is best spent looking for a new idea.

You’re the Boss
We hope that this chapter has given you the tools you need to decide whether your idea has what
it takes. The seven points listed earlier should drive you to ask tough questions about your Android
application, and we stated some rules about what does and doesn’t succeed in the world of Android
applications. These are good rules to consider, but don’t obsess over them; in reality, they’re only
guidelines. In other words, rules can be broken, but you break them at your own risk. We tried to
spell out what rules to follow, but this is your journey to make.

Summary
Now that you know what’s up, let’s go through a little checklist:


What problem are you solving?



Is it a pain-killer or a vitamin?



Who is your competition? What do you have that they don’t?



Who is the target market?



How will you reach out to the target market?



How long will it take to develop this app? Can you break the tasks into
milestones?



What technical risks must you solve? How can you prove to yourself they can
be solved?



Do you have the time and money to make this happen? Should you have
a consultant evaluate your idea?



Is the market large enough to provide your needed revenue stream?



Is the market small enough that you can target its needs accurately?

30

CHAPTER 2: Making Sure Your App Will Succeed



Is your target customer willing to pay?



What Android version are you targeting?



What pricing model are you using?



Have you tested your market hypothesis?



Do you want to stop answering questions and just break the rules? That’s up to
you, but proceed at your own risk.

Chapter

3

Legal Issues: Better Safe
than Sorry
Roy has been involved in a number of legal actions, and he can tell you that they’re never fun.
A basic understanding of how the law impacts you as an app developer can keep you out of trouble.
We aren’t lawyers, and so we can’t legally give you any specific legal advice. That said, maybe we can
recommend some legal resources that you might find useful to avoid unnecessary unpleasantries.

Retaining an Attorney – Controlling Costs
You may be hesitant to involve an attorney because of the cost. Although attorneys are rarely
inexpensive, they often cost a lot less than the consequences leveled against you. If you have any
doubt about the legality of your app, or if you have any uncertainty about legal matters, you should
get in touch with a lawyer immediately. Big name firms are great at what they do, but they are also
very expensive. If you are working with limited means, you should consider going to a smaller law
firm or perhaps to a single attorney working on his or her own. Often their rates will be more
reasonable than at the big firms. Although they may not have the depth of expertise that a big
firm does, they generally will do just fine at providing basic legal services. Ideally, you can find an
attorney who has previously worked at a big firm and now has struck out on their own. They will
have the experience of working at a big firm, but will charge more reasonable rates.
Remember that it is possible to negotiate rates with attorneys. If you meet with more than one
firm, you will have more leverage to negotiate. For run-of-the-mill work (such as incorporating your
company or writing generic employment contracts), it is often possible to request a fixed fee. You
can then shop around between firms to make an apples-to-apples comparison of pricing.
Young lawyers, known as “junior associates” are generally only a few years out of law school and
usually require on-the-job training. Be careful that you aren’t paying to train an attorney. You can
request the law firm not to use junior associates on your account. Typically, you will either want to have
a partner at the firm do your work, or work with a senior associate. Only work with junior associates
who have already done the type of work you are looking to have done. A typical arrangement is for the
31

32

CHAPTER 3: Legal Issues: Better Safe than Sorry

junior associate to do most of the work, which is then reviewed by a partner at the firm. Naturally, if a
junior associate isn't doing things correctly, you're paying for the partner to fix his errors. You should
be careful that you aren’t paying for lawyers to meet with each other. In general, the fewer lawyers you
involve, the more efficient the process will be.
If you are developing your app with a mindset to raise money from investors, you can sometimes
convince attorneys to provide consulting without upfront costs, in an arrangement known as
“deferred compensation.” This typically results in some number of billable hours that are not charged
until your company reaches a financing threshold agreed upon by you and the attorney. The attorney
may also negotiate for some equity in your venture. Once you reach the financing threshold (often
your first round of funding), you will be required to pay your outstanding balance. This sort of
deal is generally offered only by firms who specialize in helping startups. This field is known in the
industry as “Venture Capital Law.” Often venture capital law firms will waive compensation if your
company is unsuccessful in meeting its funding goals and is forced to dissolve. The specific terms
often depend on your ability to sell yourself and your idea to the attorney. Remember, this payment
structure is contingent on the idea that you are looking to raise enough money to more than cover
your legal expenses. A venture capital law firm may offer you $10,000 to as high as $25,000 or
more, in deferred consulting services. Remember, deferred doesn’t mean free; you should be careful
you aren’t being overcharged for services. Unscrupulous attorneys may charge you more for the
equivalent service because they know you will not be as attentive to costs with this billing structure.
The process of raising money from outside investors is a topic beyond the scope of this book, but
remember that if you pursue that option you will be diluting your ownership in the company and
using a lot of your time to fund-raise instead of building out your idea. If you believe the market is big
enough, it can be a good choice, but there are pros and cons to consider.
Remember that you want to be careful about what terms you accept when you engage a lawyer.
If you go to Best Law Firms, a web site from US News and World Report
(http://bestlawfirms.usnews.com/) you will see a search engine that will help you find a law firm in
your location for practice areas such as “Venture Capital Law” or “Corporate Law.”

Forming Your Company
If you release an Android application under your own name, the law considers the business to
be a sole proprietorship. You can certainly call your business whatever you want, but as a sole
proprietorship, you are personally liable for any debt, wrongdoing, and/or negligence. For example, if
you order supplies and can’t pay them back because revenue is less than you projected, then you are
personally liable for the debt. If your mapping app causes someone to drive off a cliff, they could, in
principle, sue you personally for injuries. On the other hand, when the app is owned by a corporation
(including LLCs, or limited liability corporations), liability generally attaches to the separate legal entity.
To explain this in a bit more detail, the formation of the legal entity separates the assets and liabilities
of the business from the assets and liabilities of the owner or owners. Therefore, it is often desirable
to form a corporate entity to shield yourself against lawsuits and debts attributable to the app you
have written. There are also some potential tax advantages to forming a corporation; you will be able
to write off certain business expenses, which could save you money in the long term.
Remember that you have to be careful to honor the separation of assets and liabilities, or the courts may
not shield you from personal liability. For example, if you use the company’s funds for personal matters,
that would clearly violate the idea that your personal assets and corporate assets are separate. It’s also
illegal and could result in charges of embezzlement from your creditors or shareholders.

CHAPTER 3: Legal Issues: Better Safe than Sorry

33

There are different types of corporate entities you can pick from. C Corporations, S Corporations,
and Limited Liability Companies (LLCs) all have their own unique advantages and tax implications.
There are many books on this subject written by legal experts, and because we are not lawyers, we
refer you to them for more details.

EULA and Privacy Policies
A EULA is an “End-User License Agreement.” Most often, a EULA presents your users with fancy
legalese that they must agree to in order to access a web site or install a software package.
In essence, a EULA is a contract between you and your users. It establishes the terms and
conditions under which an end user may use your app. A EULA provides a way to protect yourself
from lawsuits in the event that the software causes damage to the user’s computer or data, or by
users who use your app in ways you never intended. For example, if your app is used to prepare
taxes, you could use a EULA to limit damages when users use your software incorrectly and are
subsequently penalized by the IRS. And by the way, if that’s your app idea, we urge you to talk to
a lawyer before going any further.
There are many complex legal issues governing the legal enforceability of EULAs, so if you feel your
app needs one, again we urge you to contact an attorney with experience drafting contracts of this
type. Many Android apps go without EULAs, and often it is the larger app companies (which can
afford lawyers) that include them. However, each situation is unique, and you should think deeply
about whether you are willing to go without the legal protections that a EULA affords you.
Examples of EULAs can often be found online. There are an infinite variety of EULAs, and it wouldn’t
be possible for us to recommend one to suit your particular needs. As always, we urge you to speak
with an attorney if you have questions regarding this topic.
If you elect to include a EULA, you will want a way to programmatically display it in your app.
Sample code to do just that can be found here:
http://blog.donnfelker.com/2011/02/17/android-a-simple-eula-for-your-android-apps/

A number of jurisdictions worldwide consider the right to privacy to be a legally protected concept.
In particular, Europe has highly developed laws in this area. Although the United States has no
federally mandated privacy policy requirements, both California and Connecticut require privacy
policies for web sites and online services. As a result, to ensure that your app is legal in all
jurisdictions in which it may be used, you should include and follow a privacy policy. In general, you
need to be up front with the users as to what data you collect, and properly secure any personal
information such as credit card numbers, driver’s license numbers, and so forth.
The Mobile Marketing Association (a global nonprofit trade association) provides a free Mobile
Application Privacy Policy that you can use. The policy is short at six pages, and all you need to do
is fill in the blanks regarding your app’s specifics. You can get the policy from the following link:
http://www.mmaglobal.com/node/18771?filename=MMA_Mobile_Application_Privacy_Policy_15Dec2011PC_
Update_FINAL.pdf

The Google Play Marketplace considers privacy of vital importance, so in addition to showing the
user what your app will access (location, contacts, etc.) it also provides an optional link to your
privacy policy. You can also host a web site that includes your privacy policy.

34

CHAPTER 3: Legal Issues: Better Safe than Sorry

Although the privacy policy is currently optional, an agreement made by Google and five other major
tech sector companies with the California Attorney General makes it likely that they will become
mandatory sometime in the near future. It should go without saying that you must comply with the
stated terms of your privacy policy. If you don’t, you could be prosecuted under a number of laws,
including California’s Unfair Competition Law and/or False Advertising Law granting “the right of the
public to protection from fraud and deceit.”

Intellectual Property
You’re planning to make money by distributing something that’s really just a bunch of programs
and data sitting in memory. Fortunately, even though software isn’t a physical object, you can still
protect it from theft just like real property. On the flip side, you can also be accused of stealing
intellectual property. We think you’ll agree that a little background on the laws of intellectual property
is something every developer should have. Let’s focus on four different flavors of intellectual
property: copyrights, trademarks, trade secrets, and patents.

Copyrights
A copyright gives a creator of an original work (such as a book, photograph, or software) an
exclusive right to it for a limited time. Specifically, a copyright holder is granted the right to dictate
who can copy, distribute, publicly perform, modify, or create derivative works from their original
work of authorship. This means that as the creator of an app, you alone have the right to copy, sell,
or transmit the app for the duration of the copyright. Of course, you can assign that right to others
if you choose. In most jurisdictions, a copyright lasts at least 50 years after the author’s death. It’s
often longer than that.
For these reasons, you might be interested in obtaining a copyright. The good news is that it’s very
easy to get. In legal terms, the moment that you put your pen to the paper or type characters into
the computer, copyright protection is granted. Copyright can protect aspects such as source code,
graphics, sound effects, and other original creative works you put in your application, but it does not
protect any facts or ideas that are not used in a creat