
Explore how to use Retrofit to fetch photos from Unsplash, bind views with ButterKnife, and store data with Realm, building a real Android wallpaper app ready for Google Play.
Create a basic Android app in Android Studio with a navigation drawer, customize colors in colors.xml, remove the extra drawer menu, add a favorite icon (ic_favorite) and header, then test.
Create three main fragments—PhotosFragment, CollectionsFragment, and FavoriteFragment—and organize the project by adding an Activities And Fragments And Utils package; implement a changeMainFragment function to swap fragments in the main_container.
Create an Unsplash developer account and register a new application named wallpaper, saving the application id. Note the 50 development requests and contact the Unsplash team for more requests.
Learn to integrate the ButterKnife view binding library to generate boilerplate via annotations, reducing repetitive code and saving time by importing ButterKnife into your Android project.
Create a photos view in a fragment with a recycler view and a photo item layout featuring circle and square image views; implement a custom SquareImageView for square photos.
Learn to import Retrofit, Gson, and Glide into your Android project, configure OkHttp and the logging interceptor, and add the Gson converter for Retrofit 2, while resolving Glide version conflicts.
Learn to configure Glide, Retrofit, and Gson for an Android app by creating app modules, a service generator, and an api interface, plus an http interceptor for authorization.
Create four data models: photo, urls, user, and profile image in Android Studio using Gson @SerializedName for field mapping, preparing for the photos adapter in the next video.
Create a photos adapter by extending RecyclerView.Adapter and implementing a ViewHolder, binding views with ButterKnife, and loading images with GlideApp from a photos list.
Load photos from Unsplash using Retrofit to fetch /photos and display them in a recyclerview, with ButterKnife and a progress bar for a responsive UI.
Open android studio and configure fragment_collections_progressBar and fragment_collections_gridview with 2dp horizontal space to build the collections view. Create item_collections xml for the gridview item, featuring a square image Beautiful Mountain.
Define a collection model for Unsplash featured collections API, capturing id, title, description, total_photos, cover_photo, and submitting user; then create a Collection class with totalPhotos and coverPhoto in Android Studio.
Create a CollectionsAdapter in the adapters package by extending BaseAdapter, with a constructor context and list of collections, and implementing getCount and getView with a ViewHolder using ButterKnife and Glide.
Fetch featured collections from Unsplash via ApiInterface, display them with an adapter in a collections list, and manage progress while handling the API response.
Create a collection view layout in Android Studio, including a fragment with a recycler view, progress bar, and user avatar, displaying the collection title, description, and user.
Load collection information and photos by id with two requests and display them in a recycler view in the collection fragment, enabling back navigation.
Create a fullscreen photo view with a floating action button menu, including two actions—favorite and set wallpaper—using a FloatingActionButton library and a new xml layout file named activity_fullscreen_photo.
build a fullscreen photo activity by extending AppCompatActivity, removing action bar and status bar for fullscreen, using ButterKnife for binding, and retrieving a photo by id from Unsplash via intent.
Fetch a photo by id from Unsplash in FullscreenPhotoActivity, update the UI with the retrieved bitmap via getPhoto, and handle errors with try-catch.
Implement the set wallpaper function with required AndroidManifest permissions, handle bitmap scaling to centerCrop, and confirm wallpaper set status in the FullScreenPhotoActivity.
Initialize Realm in an Android app by creating AppController extending Application, overriding onCreate, and updating AndroidManifest to reference AppController; this setup enables saving photos with Realm.
Create RealmController in the utils package to manage photos stored in Realm, using a Photo model that extends RealmObject with PhotoUrl, User, and ProfileImage. Implement savePhoto, deletePhoto, isPhotoExist, and getPhotos.
Handle favorite button interactions by using realmController and photoID to track saved photos, update the favorite icon via setFabFavorite, and manage two cases: photo stored or not stored.
Retrieve all photos stored in Realm and display them in recyclerview, updating the adapter with getPhotos and realmController.getPhotos, and show a notification while hiding the recycler when no photos exist.
Every developers want to build a REAL THING, a REAL APPLICATION not just something for learning.
In this course, you will learn how to build a real and beautiful Wallpaper Application by using Unsplash API.
And of course, you will learn how to use a lots popular Android libraries such as Retrofit, GSON, Realm, ButterKnife, Glide 4.
This is THE COURSE for you.
With only few hours of content, this course will CHANGE your Android skill.
Don’t wait and enroll today. I hope to see you in my course!
P/s: This course has ENGLISH subtitle. So don't worry !