Friday 1 July 2016

Install Apps not available from Google Play Store


Note: This content in this article is targeted towards Android Users

In this post, I shall be describing the steps/tricks/hacks to install apps that cannot be downloaded/available via Google Play store. Please refer the section 'FAQs' below if you face issues while following the steps mentioned below

1. File Sharing apps like ShareIt

Note : This method shall work only if your friend has the app installed in his mobile and he/she is in your proximity
You could first install a file sharing app like ShareIt . Get the same installed on your friends mobile as well. Now through 'Share It', chose the app of your interest and use the Send/Recieve feature. It gets transferred to your mobile !!

Benefits :
File sharing apps mostly use technologies like Bluetooth tethering hotspot, Wi-Fi direct etc., and mostly no charges since it doesn't consume mobile/Wi-Fi bandwidth. Its free !!

2. Use alternate channels to Google PlayStore

Its possible that certain app stores like apkpure might have it available. There are quite a few other popular play stores that pulls the apps published from Google Playstore and have it synchronized in their repositories. Hence its possible they might have them. You could download it from these alternate channels and have it installed on your mobile. Refer to the FAQ below 'My Smartphone is not allowing apps from alternate sources' if you have issues installing it on your mobile.

FAQs

My Smartphone is not allowing apps from alternate Sources

Google by default doesn't allow apps downloaded from sources other than PlayStore. You have an option to disable it though. You need to enable installation from 'Unknown Sources' from your mobile Security Settings.
In my phone (One Plus X), I could do it through Settings->Security->Unknown sources (Toggle the radio button)

What are the common reasons for an app to be not available in Play store ?

For e.g., Popular e-Commerce app 'Walmart' is not available for India users. Several reasons and here are a few

  • Google allows an app publishers to list the countries he/she wants the app to be available in. App developer/publishers might select only a few countries of his interest. Common reasons for choosing/restricting in certain countries is due to lack of support/business in the particular country. 
  • Google charges a fee for developers to register before they can publish. At the time of writing this article, its 25$ (one time registration fee. Quite cheap when compared with Apple Store which is 100$ renewable ever year !!). Its possible that app developer/publisher chose not to pay this fee and published his/her app through alternate channels (like apkpure)
What are the disadvantages/down-sides of this approach ?
A few side-effects listed below
  • You might not get latest version since your friend might be running an older one. 
  • Google does not officially support/authorize apps downloaded other than from PlayStore.

I got the app downloaded/installed. But unable to run it ?
Its possible that app developer might have written his/her app to be country specific. Android has Location/Country APIs. Developer might have leveraged it and restricted access for your location programatically.



Thursday 12 May 2016

Leverage Github Pages to simulate REST Service (HTTP GET)

In this article, I shall talk and demonstrate about leveraging github page to be used as REST service simulator. 
Most of the developers in typical development cycle shall be implementing the solution in bits and pieces. We would be having dependencies on other network services (REST APIs). This article shall be useful for those
  • blocked on other's service implementation that is either in development or not yet started
  • All they need is a simple HTTP GET service (You could pass query parameters and headers as well !!)
  • Need some sample test data (let it be static for now. As such for testing purpose, its fine)
  • Need to test their integration over and beyond intranet


Most of you must already be knowing that Github pages allows you to host webpages. This is possible by creating a special repository with the name '<github-id>.github.io' in your git account and placing the relevant HTML/CSS. I had explored this and could create mine like most of you have already done.

I have figured out that github can as well be used as a API hosting server. Of course, with little caveats, I could simulate a HTTP GET REST service. Refer my test rest service here. To test it, hit the URL http://balaji-katika.github.io/test.json using any API testing tool like curl, PostMan etc.,
All you need is to do is to create a file with .json suffix. Access with any API testing tool  Thats it !! You are done. 

FAQs

* I could as well, build this kind of simulation using a simple spring based webapp samples running on my localhost. How is it different ?
Well, you can. However, this trick might benefit when you want to access the API outside the company intranet. Further, no headache of maintaining/build the new localhost based service when all you can do is to simple create a file with test data. Isn’t it ?

* What are the caveats you talked above ?
You cannot access this endpoint from a web application. Since, browser respect CORS headers and shall prohibit your application from hitting this endpoint

* What kind of tools/apps can benefit out of this ?
Any application (except for javascript, jsp based) planning to pull data from remote service could use this technique.

* Can you demo a real world application to help me understand better.

In the next article, I shall talk about how I could leverage this in one my hobby android application. 

Tuesday 2 February 2016

Muhurat - My first Android App

Muhurat helps you figure out Auspicious timings from your finger tips. It shall calculate the Muhurat (Rahu, Gulika, YamaGanda etc.,) based on your last tracked location longitude and latitude. When location is not available, this application sets Bangalore (India) as the default location. Seeking your suggestions/feedback to improve and make this even more better. Please share your feedback via balaji.katika@gmail.com

You may downloaded the app from https://play.google.com/store/apps/details?id=com.tr.muhurath.app.muhurat

Special thanks to 

FAQs

Is this App free ?
Its completely free for Android users and can be downloaded from Google Playstore. 

I know few other apps already doing similar stuff. Why this app again ?
This app differentiates in itself because it considers the geographical locations of the user and the sun-rise/sun-set timings are taken into account for the location while calculating the muhurat. 

Are you planning to further improve this App ?
Certainly. I am seeking inputs/feedback from people like you. Please reach me via balaji.katika@gmail.com

I am an NRI using the app outside of India. It seems to be showing incorrect timings ?
Please turn on your location settings and sync up your location services. Restart the app and it shall work correctly. You could turn off the location settings and the app shall refer to the latest available information/cache going forward.


Few screenshots of the app pasted below