Google recently announced the launch of Android Instant Apps, a new technology which allows just the bare minumum of an App to be downloaded from links, bypassing the Play Store. This sounds cool enough on its own, but the implications of this reach far deeper than at first appears, and could end up changing the entire internet.
Introduction to SpringAnimation
- Alexander Krupa 0 Comments
SpringAnimation with examples
Have you ever wanted to do a bouncy animation like one of these on Android? If you have, you’re in for a treat!
Dynamic-animation is a new module introduced in revision 25.3.0 of the Android Support Library. It provides a small set of classes for making realistic physics-based view animations.
You might say “whatever, I’m just gonna slap a BounceInterpolator or an OvershootInterpolator on my animation and be good”. Well, in reality these two often don’t look that great. Of course, you could always write your own interpolator or implement a whole custom animation – but now there’s a much easier way.
Things I wish I knew when I started building Android SDK/Libraries
- Nishant Srivastava 0 Comments
Re-invent the wheel the right way, and only if really necessary
It all starts when some android developer tries to figure out a solution to a problem he/she is having while building their “Awesome Android App”. During the process, most developers would encounter a couple of issues and in tandem, to those, they would come up with possible solutions.
Now here is a thing, if you are like me, who believes that if the problem was big enough for me to spend some time on it and there wasn’t an existing solution out there, I would abstract the whole solution in a modular manner, which eventually turns out to be an android library. Just so that whenever in future I encounter this problem again, I can reuse this solution easily.
So far, so good. So you have built the library and probably started using it completely privately or if you think someone else could make use of the same solution you release the code as an android library i.e.you open source the code. I believe (..or rather that is what it looks like..) at this point everyone thinks they are done.
Custom Fragment Transition (Part 1)
- Mariusz Brona 0 Comments
Workcation App
Welcome to the first of series of posts about my R&D (Research & Development) project I’ve made a while ago. In this blog posts, I want to share my solutions for problems I encountered during the development of an animation idea you’ll see below.
As we can see in the animation, there is a lot of going on:
- After clicking on the bottom menu item, we are moving to the next screen, where we can see the map being loaded with some scale/fade animation from the top, RecyclerView items loaded with translation from the bottom, markers added to the map with scale/fade animation.
- While scrolling the items in RecyclerView, the markers are pulsing to show their position on the map.
- After clicking on the item, we are transferred to the next screen, the map is animated below to show the route and start/finish marker. The RecyclerView’s item is transitioned to show some description, bigger picture, trip details and button.
- While returning, the transition happens again back to the RecyclerView’s item, all of the markers are shown again, the route disappears.
Android Things – Electricity Monitoring App
- Riggaroo 0 Comments
Introducing “Electricity Monitor"
For those who may not know, I live in beautiful sunny South Africa (see my tweets for lots of awesome pictures). A few years ago we battled with a lack of electricity. While “load-shedding” is not so common these days, we have numerous unplanned outages. We even have a few of apps that give out schedules when the electricity is scheduled to go off in your area (see here and here).
While these apps serve a purpose, they are not so good when we have unplanned outages.
Which often leaves me asking myself the following questions:
Do I have electricity at home right now?
If not, how long has the electricity been out for?
Is it okay to eat the contents of my freezer?
5 Not So Obvious Things About RxJava
- Jag Saund 0 Comments
ReactiveX corner cases
Whether you’re new to RxJava, or have used it for a while, there’s always something new to learn. While using the framework, I learned 5 not so obvious things about RxJava that helped me maximize its potential.
This article references APIs that are available in RxJava 1.2.6
1. When to use map or flatMap
Map and flatMap are two commonly used ReactiveX operators. They’re often the first two operators you learn, and it can be confusing to figure out which one’s the right one to use.
Both map and flatMap apply a transformational function on each item emitted by an Observable. However, map only emits one item, whereas flatMap emits zero or more items.
In this example, the map operator applies the split function to each string and emits one item containing an array of strings. Use this when you want to transform one emitted item into another.
The lost droid and the magic Dagger
- Netcyrax 0 Comments
An introduction to dependency injection for Android
You might have heard the term "dependency injection" before.
You might have even tried to Google it and stumbled upon a definition that introduced 2 new unknown terms: inversion of control and dependency injection pattern.
Personally, I find the following definition to be the most descriptive - dependency injection for five-year-olds:
When you go and get things out of the refrigerator for yourself, you can cause problems. You might leave the door open, you might get something Mommy or Daddy doesn’t want you to have. You might even be looking for something we don’t even have or which has expired. What you should be doing is stating a need, "I need something to drink with lunch," and then we will make sure you have something when you sit down to eat.
- StackOverflow answer
Sharing files through Intents: are you ready for Nougat?
- Lorenzo Quiroli 0 Comments
Nougat and onwards forbids file:///URI beyond your package
Since Android 7.0 Nougat you can’t expose a file:/// URI
with an Intent outside your package domain, but don’t worry: here’s how you can fix it.
Android 7.0 Nougat introduced some file system permission changes in order to improve security. If you’ve already updated your app to targetSdkVersion 24 (or higher) and you’re passing a file:/// URI
outside your package domain through an Intent
, then what you’ll get is a FileUriExposedException
.
When you share a file with a file:/// URI
, you also modify the file system permission of it and make it available to any app (until you change it again). There’s no need to say that this approach is insecure.
Why is this happening?
According to the official documentation:
In order to improve the security of private files, the private directory of apps targeting Android 7.0 or higher has restricted access (0700
). This setting prevents leakage of metadata of private files, such as their size or existence.
Android Fragments Tutorial: An Introduction
- Huyen Tue Dao 0 Comments
The mini-me's of Activities
This tutorial is an introduction to Android Fragments. You will learn the fundamental concepts of Android Fragments while creating an app that displays the rage comics.
Update note: This tutorial has been updated to API 25 and Android Studio 2.2.2 by Huyen Tue Dao. The original tutorial was written by Huyen Tue Dao.
fragment | noun | /’frag-mənt/
an isolated or incomplete part of something.
A fragment is an Android component that holds part of the behavior and/or UI of an activity. As the name intimates, fragments are not independent entities, but are subservient to a single activity.
In many ways, they resemble and echo the functionality of activities.
DroidCon London 2014
- Carl Whalley 0 Comments
Want to find out about all the latest Android advances, listen to expert speakers, see fantastic new technologies, and meet the international Android community? Then come and join Droidcon London, the largest Android developer conference in Europe!
Droidcon London, Europe’s biggest grassroots Android developer conference, is back in London on October 30th - 31st! We’d love you to come along, and so to make the decision a little easier for you, here’s a whopping 25% discount off the ticket price!
Simply book your place here: https://skillsmatter.com/conferences/1919-droidcon-london-2014 using this promocode: GOOGLEDROID-DROIDCON-2014
You’re just a few short clicks away from meeting some of Android’s foremost experts and innovators - from our keynote speaker Google’s Chet Haase. to Cyril Mottier of Capitaine Train, from author of ‘Smashing Android UI’ Juhani Lehtimaki to UI specialist Taylor Ling, and many other pioneers of leading Android technology from Cyanogen, Google, Mozilla and Novoda.