Today most of the applications use internet in some way or the other. But in a country like India, network is the one of the major issues for most of the users. Most Indian users are still on mobile networks rather than Wifi. Even networks like 3g tend to be very slow. So in this scenario, how do the big and most widely used android applications which perform extensive network operations work and optimize their network calls?
I am working on a news reading application which contains news content, news image and also advertisements. Now if the network connection is not good, then it gives a bad experience to the user. So before making requests, I want to determine the connectivity of the user in real time. And based on the network type, I want to enable or disable some of the content. Android provides a class Networkinfo which can be used to determine the type and subtype of the current network based on which we can categorize the network as WIFI, 3g , 2g etc . But this information doesn't practically help in real time because even a Wifi network can be slow sometimes. I came upon a class from Facebook Connection Class <https://github.com/facebook/network-connection-class> which helps to determine the speed of the internet based on the actual transfer of the data. Based on this library the connection can be classified into four categories like POOR ( < 150 kbps ), MODERATE ( 150 - 550 kbps ), GOOD ( 550 - 2000 kbps ) and EXCELLENT ( > 2000 kbps ). Now this solutions seems to little more practical and I intend on including this in my application. Before plunging into any implementation, I want to know how other applications which have huge network calls optimize their operations for poor networks ? Any references would be really helpful. -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To unsubscribe from this group and stop receiving emails from it, send an email to android-developers+unsubscr...@googlegroups.com. To post to this group, send email to android-developers@googlegroups.com. Visit this group at https://groups.google.com/group/android-developers. To view this discussion on the web visit https://groups.google.com/d/msgid/android-developers/ab4c9391-a402-436c-80ff-ef4c73ee54ce%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.