Build a Simple Android App
Publish an Android App
Build an Interactive Story App
Build a Blog Reader Android App
Build a Self-Destructing Message Android App
Implementing Designs for Android
Android Data Persistence
In this course you will gain all the knowledge you will need to build an interactive command line program in Java. No prior programming experience is required. You will create an interactive game that prompts users for different parts of a sentence and then generates a story using those words.
This project covers the very basics of Android development. We will build a simple app that will serve up some fun facts when you tap on a button. We introduce the Java programming language, a tool for Android development called Android Studio, and some very basic concepts of the Android Software Development Kit, or SDK. By the end you will have a good idea of how a basic app works, and you will be armed with the knowledge to start building more.
Publishing your app on Google Play allows you to share it with users around the world, and maybe even make some money. Publishing your first app can be a little overwhelming, so this course will walk you through preparing an app and then publishing it on Google Play.
In this course we will build a simple choose-your-own-adventure story app, complete with fantastic illustrations. We will model our story and introduce the Model-View-Controller pattern, and we will learn about getting input from users, displaying images, and using more than one Activity.
Using the right tools can make an Android developer's life so much easier. At Google I/O in 2013, a new Android IDE was announced named Android Studio. Currently available as a beta release, we will see how to get started and learn some helpful features that make it powerful and fun to use. Then we will take a look at a 3rd party emulator called Genymotion that is much faster and more responsive than the default Android emulator. And lastly, every developer should be using some sort of version control, even on small projects. We will show you how to set up and make changes to an Android project on GitHub.
The Blog Reader app will teach us one of the most common and important uses of an Android app: downloading data from the Internet and displaying it in a list. We will investigate the Model-View-Controller design pattern that is essential for all Android apps, learn how to request data from the web, parse and use information in JSON format, and utilize the built-in Android ListActivity and adapter. We'll also see how to display a webpage inside our app.
In the Self-Destructing Message app we will build on the concepts learned in previous Android projects to create an app that will allow users to send photo or video messages to other users that will be deleted once viewed. The app will be tab-based, meaning we will cover Fragments, and we'll dive further into layouts, list views, and the Activity lifecycle. The backend of the app will be built on Parse.com's popular cloud storage services, which will handle user accounts and file and message storage.
In this project we will see how to implement a clean and refreshing flat design for the Ribbit app from Build a Self-Destructing Message Android App. We will start out by implementing custom login and sign up screens, and then we will heavily customize the ListViews and the rest of the app, including using a custom theme and styles. Finally we'll add a few improvements to the app like pull-to-refresh in the Inbox and getting Gravatar images for users.
Being able to save or persist data within our apps is an important fundamental skill. It enables our users to save their work, remember their preferences, store all types of files for reuse, and more. These features are evident to some degree in almost every application. In this course, we will be learning about the different ways in which we can persist data in our apps. We will be creating an app which can make memes in order to learn about these different concepts. By the end, we will know what types of considerations come into play when developing an app with data persistence features.