Image for post
Image for post

Using WebViews in your native application is very common these days but when it comes to performance, rendering of a WebView is quite slow. As most of the heavy lifting done by WebView is loading images. In our Web-Pages we tend to use many images and most of those images are really large in size and loading them every time the user opens the App’s WebView is not good.

I read about how to increase performance of WebView by implementing Caching web resources like JS, CSS and image files. You can also static resources in your native application, and by intercepting the Resource requests you can override the default behaviour of WebView. …

Image for post
Image for post

Problem: An XOR Linked list is a more memory efficient doubly linked list. Instead of each node holding next and previous fields, it holds a field named both (addr in our case), which is an XOR of the next node and the previous node. Implement an XOR linked list; it has an insert(element) which adds the element to the end, and a get(index) which returns the node at index.

Points to know before understanding the following solution.

  1. Every object is stored at memory address and any pointer (reference) is a way to access that object.
  2. In C++ you can convert any address to integer simply by casting it to suitable data type. …

Image for post
Image for post

So what is a DeepLink?

DeepLinks are a concept that helps users navigate between the web and applications. They are basically URLs which navigate users directly to the specific content in applications.

So DeepLink is an URL which can directly land you to a particular application in your Android or IOS device.

But what if there is more than one application that can handle a particular type of link. Usually, this is the case when there more one application that can edit your image, crop your image, play a video and social media applications that accept any type of content on your phone. Simple example of this would be when you are in your gallery application and click share. …

Image for post
Image for post

In Android, there are many ways to create an animation. From transitioning activities with animation to showing and hiding views, you get many choices when creating animations. You can useanimation drawables, create custom translations using Animation java class, there are ObjectAnimators and ValueAnimators too and simply there is the animate() method for every view available, why not just use that. But creating an efficient SlideUp and slideDown animation is always been a problem for many developers. To create Slide up/down animation you can go for translating views from some negative top margin to zero top margins or if it is a SlideUp The animation than from a positive bottom margin to zero bottom margin. But the animation effect can only be achieved for the views which have either device’s width or height. …

Image for post
Image for post

Just after android introduced `Recycler View` which is nowadays being used really extensively and became most essential part of our Android Applications. But we are still unaware of the many applications of the customizable recycler view. Lets first discuss the advantages Recycler View has over ListView.

Well, these are the few benefits we get when we use RecyclerView and ignore the old ListView.

  1. Enforced ViewHolder Pattern
  2. Horizontal Linear Layout Manager and Grid Layout Manager
  3. Item Animator
  4. Easy to create a different type of views by just passing view type in onCreateViewHolder method.
  5. Enabling change notification on item or item range by introducing notifyItemChanged and notifyItemRangeChanged method. …

When building mobile applications you will often need to store persistent data on the device itself. This type of storage allows your applications to function effectively when there is no connection as well as offering more advanced and often faster functionality than server-side storage only. But as we are moving toward offline-first applications we need to have both client-side storage and server-side storage and your application will manage the flow of data between the client and server. Application Craft provides all the tools you need to do this. But choosing between different types of persistent storage on the client-side is really hard. Every storage type has different advantage over one another. …


Mudit Sen

Senior Android Developer.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store