This Weeks Links
Fragmented Podcast Episode 046: okJesse – A deep discussion on okHttp, okio and Retrofit
Everyone loves Retrofit & okHttp. But how did they come about? Why ok? What was the need for such libraries? We went knocking on the doors of Square trying to find the answers to these question. We were lucky cause we found probably the nicest most brilliant Android/Java developer of our times – our good friend Jesse Wilson and without surprise, he crushes it!
He gives us the scoop on the origin stories of these amazing libraries and also gives us insight into okio and why it’s such a game changer today.
How to use Bitmap Pool in Android?
An Image heavy app decodes many images, by using Bitmap pool you can avoid continuous allocation and deallocation of memory in your app, reducing Garbage Collector overhead. This will result in a smoother experience on the app, so take a look at how to do it!
Bottom sheet everything
Bottom sheet is a material design component that has been officially included in Google design guidelines since August 2015. Now that the title has caught your attention, please do not bottom sheet everything. However, using bottom sheet in the right context can greatly improve user experience. Ha Duy Trung shares his experience…
Fast and reliable UI tests on Android
In this article Iván Carballo, Software developer at ribot, shares how they used Mockito and Dagger 2 to more reliable UI tests on Android, in less time. If you are starting to look at writing UI tests on Android or wish to improve the performance of your existing ones, this post is for you!
ConstraintLayout – Part 3
In this series of articles you will take a look at the new Android layout named ConstraintLayout and you will be provided with some insights into how best to use it. Part 3 looks at using the visual editor to create constraints.
Improving Stability with Private C/C++ Symbol Restrictions in Android N
Android N will restrict which libraries your C/C++ code can link against at runtime. As a result, if your app uses any private symbols from platform libraries, you are going to need to make some changes, take a look at the details…
Droidcon Berlin recap
This post shares some general themes, highlights and takeaways from Droidcon Berlin with you, including: Architecture, IoT and Designing for the next billion.There are also some great links to slides from conference at the bottom of the post.
Share URL to Clipboard
The ‘copy to clipboard’ action is part of the Google Drive app and was only added at the end of 2012. This post looks at how sharing to the clipboard works and implementation without the additional information such as the intro or headline of the URL being included.
The curious case of dependency conflicts
Most of us have experienced a gradle build failing because of a version conflict in dependencies, due to each library following a completely different development lifecycle and using a different version of a public api. While you should always try to be using the latest version of the dependencies and libraries, this post defines the process to help you figure out why your build is failing and bypass the issue in the meantime.
Advanced DataBinding in Android
This post follows on from previous posts covering working with DataBinding Android through to Two-way DataBinding by Ravi Rupareliya. In this post he shares a deeper look into advanced DataBinding.
Why we chose QueueFile for reliable Request Batching on Android
Prateek Srivastava, an engineer at Segment, shares why they chose QueueFile from Square to help minimize the impact of the Segment’s mobile SDKs on battery life. The article looks at their queueing requirements, solutions and provides a detailed explanation as to why they chose to build on Queue File.
Launch Screens: From a Tap to Your App
Often the first experience and impression a user gets of your app is delivered by the Launch Screen. This post and slideshow are support resources provided by Cyril Mottier while we are awaiting for the video of his deep dive talk which covered: concept of launch screen, discover how to measure, debug & optimise them efficiently, and learn more about how to implement them correctly.
Android Getting Started with Firebase – Login and Registration Authentication
Firebase provides a full set of authentication options out-of-the-box. This post and video will take you through creating a simple login / register app with firebase using email and password authentication.
Firebase – Crash Reporting
Integrating crash reporting is becoming easier thanks to Firebase Crash Reporting (currently in beta). This post will help you get started with this comprehensive tool which provides detailed crash information and outlines why you should consider making the switch.
Firebase – Cloud Messaging
FireBase Cloud Messaging is simplifying the integration of push notifications while providing improved battery performance tunings. Take a look at why you should consider using FCM for your push notification needs and how to get started.
How to retrieve an Unique ID to identify Android devices?
There are many reasons why you may wish to obtain a Unique ID for a device including DRM and installation tracking. This tutorial, examines five solutions to obtaining a Unique ID and the disadvantages of each, to help you determine which will suit your needs.
Five Common Issues That Slow Down Your App
This post is a summary of the most common issues that have been found to be slowing down devices. The results are provided by NimbleDroid which analyzes a range of factors, you can find detailed information on a particular app on their website including: Method Count, File Size, Maximum Memory usage, Disk I/O and startup time.
11 User Interface Android Libraries
Because a characteristic of a flawless UI is that it “just feels right” to use, your users will probably not notice the amazing experience you have provided them by using these 11 great User Interface Libraries, but you will..
Introducing the Android Basics Nanodegree
Google, in partnership with Udacity, is making Android development accessible and understandable to everyone. This article provides a series of courses and services which will teach you or someone you know how to build simple Android apps–even if you have little or no programming experience.
Caster.IO Episode 81: Custom Views and ViewGroups (Part 1)
An introduction to custom Views and ViewGroups, subclassing the View class, and performing completely custom drawing within that subclass.
In this episode you will learn:
- When you might need to build custom Views.
- The process of how an instantiated View is drawn onto the screen.
- The basic steps to extend the base View class to draw fully custom content.
- How to use a custom View class in an XML layout.
- How to request a custom View class to redraw.
Using Structural Search and Replace in Android Studio
A video tutorial showing how to use the structural search and the structural replace functions of Android Studio.
Android library that provides the most common functions around recycler view like Swipe to dismiss, Drag and Drop, Divider in the ui, events for when item selected and when not selected, on-click listener for items.
References for everything like best practices, performance optimization etc.
A small library containing two adapters which allow for easy fragment management with a NavigationView.
Android library to get device information in a super easy way.
Glide Bitmap Pool is a memory management library for reusing the bitmap memory.
Give your boring javadocs a splash of color!