Wednesday, September 21, 2016

SMS Notifications Survey


Tuesday, June 14, 2016

Free Vehicle, Children & Pet Tracking System

TrackMe GPS Tracking System

TrackMe is a GPS tracking system designed to track any type of objects but going beyond in ensuring the safety of your beloved ones, finding them whenever you want. Various options are provided free of charge and also at nominal rates.

TrackMe Server

TrackMe GPS Tracking Server
How Global Positioning System tracking works

TrackMe serves not only as a simple tool to track objects online, but it can also be a lifesaver. The devices that are integrated with our systems can ensure tracking of almost any object be it vehicles, but also the track Life. Be it tracking of Children or even Pets, our services are very broadly designed to capture and serve all aspects that needs to be considered.

All the tracking devices installed on vehicles will communicate with the TrackMe server. The server has the capability and interfaces to communicate with a variety of devices through SMS and GPRS in synchronization.

The server will maintain a registry of tracking devices set for monitoring.

Glimpse of TrackMe Features

Location Details in real-time

Map devices location through Mobile Apps and Web portal Monitor location of objects in real time, on the map of your choice!

Create Geo-fences and routes

Geofence feature allows users to set up geographic boundaries around areas that needs to be specifically monitored.

Push & Email Notifications

Get instant alerts of predefined events: when object enters or exits geo-zone, speeding, SOS alarms, engine on/off etc.

Monitoring devices simultaneously

Monitoring trough the mobile App. Android, iOS and web portal.

Group monitoring

Possibility of several users monitoring the same module through the web portal or smartphone app.

Restful API

TrackMe provides RESTful API for third party integration.

History & Reports

View past locations
Preview and download reports in different formats (XLS, PDF, CSV, TXT).

Fall detection

Fall detection technology can detect a fall and immediately contact a predefined emergency number, which will send help in a matter of minutes.

Locate mode

Detect the direction and distance to where your vehicle, child, pet or tracking object is.

Find more details about  TrackMe Global Positioning System 

Tuesday, February 2, 2016

Sanjiva Weerawarana's Blog: Understanding the (Sri Lankan) IT Industry

Sanjiva Weerawarana's Blog: Understanding the (Sri Lankan) IT Industry: In the last 3+ weeks there's been war raging in the IT Crowd in Sri Lanka about the proposed CEPA/ETCA thing : Basically the part of a...

Thursday, December 17, 2015

Android, Web, Cloud and Backend and Entrepreneurship Courses


Google and Udacity offer you 31 courses that will make your mouth water and your mind dance. Savor one or several of our 31 self-paced online training courses to indulge your curiosity, expand your knowledge, and hone new skills. Choose from Android, Web, Entrepreneurship, or Cloud and Backend tracks. Are you ready?

Google and Udacity offer you 31 courses



More and more people around the world are embracing mobile at an increasing pace, whether on their phones, in their cars, at home, and around their wrists. Learn to build apps for them!



Refine your web development skills for mobile. Create fast, fluid user experiences. Deploy for all desktop and mobile devices. Streamline checkout and payment. Learn how to build beautiful, performant, responsive applications for the world’s largest platform.


Cloud and Backend

Does your app need to support more users? (Congratulations!) Do you want to move data handling for an existing app from the device to the cloud? Learn how to take advantage of public cloud infrastructure to support millions of users and terabytes of data.



Start the year with a new start up. That says it all. Take these courses to learn how to do it successfully.

And that’s it. 31 courses that will catapult your skills and make 2016 your best year yet! Happy Holidays!

Android, Web, Cloud and Backend and Entrepreneurship Courses

Wednesday, October 14, 2015

Android Studio 1.5 Preview 1 Available


We’ve just released 1.5 Preview 1 to the canary channel!

The memory profiler has a new “analysis” feature where it can analyze a heap dump to look for known problems, such as leaked activities. To use this feature, open a heap dump and look for the Analyzer Tasks window on the right:

AndroidStudio Analyzer Tasks window

Analyzer Tasks window

Android Studio 1.5 Preview 1 Available

Thursday, October 8, 2015

Android app architectures Standard Android MVP and MVVM



This repository showcases and compares different architectural patterns that can be used to build Android apps. The exact same sample app is built three times using the following approaches:

Standard Android: traditional approach with layouts, Activities/Fragments and Model.

MVP: Model View Presenter.

MVVM: Model View ViewModel with data binding.

The App

The sample app displays a list of GitHub public repositories for a given username. Tapping on one of them will open a repository details screen, where more information about the repo can be found. This screen also shows information about the owner of the repository.

MVP: Model View Presenter


Libraries used

  • AppCompat, CardView and RecyclerView

  • Data Binding (only MVVM)

  • RxJava & RxAndroid

  • Retrofit 2

  • Picasso

  • Mockito

  • Robolectric

Standard Android

The /app directoy contains the implementation that follows the traditional standard Android approach. This is a couple of layout files, two Activities and the model. The model is exactly the same for the three implementations and it contains: Repository, User and a retrofit service (GithubService).

With this approach, Activities are in charge of calling the GithubService, processing the data and updating the views. They act kind of like a controller in MVC but with some extra responsibilities that should be part of the view. The problem with this standard architecture is that Activities and Fragments can become quite large and very difficult to tests. Hence why I didn’t write any unit test for this case.

MVP – Model View Presenter

In /app-mvp you will find the sample app implemented following this pattern. When using mvp, Activities and Fragments become part of the view layer and they delegate most of the work to presenters. Each Activity has a matching presenter that handles accessing the model via theGithubService. They also notify the Activities when the data is ready to display. Unit testing presenters becomes very easy by mocking the view layer (Activities).

MVVM – Model View ViewModel

This pattern has recently started to gain popularity due to the release of the data binding library. You will find the implementation in /app-mvvm. In this case, ViewModels retrieve data from the model when requested from the view via data binding. With this pattern, Activities and Fragments become very lightweight. Moreover, writting unit tests becomes easier because the ViewModels are decoupled form the view.

Fork the repository

Android app architectures Standard Android MVP and MVVM

Monday, October 5, 2015

Convert Java String to Binary


Convert Java String to Binary

public class CodeSnippets 

public static StringBuilder getBinary(String value)
byte[] bytes = value.getBytes();
StringBuilder binary = new StringBuilder();
for (byte b : bytes)
int val = b;
for (int i = 0; i < 8; i++)
binary.append((val & 128) == 0 ? 0 : 1);
val <<= 1;

return binary;

Convert Java String to Binary

Friday, October 2, 2015

Android Studio 1.4


Today we are releasing the 1.4 update to the Android Studio stable release channel. Most of the work and enhancements for Android Studio 1.4 are under the hood. However we have a handful of new features that we hope you enjoy and integrate into your workflow.

Android Studio 1.4

Wednesday, September 30, 2015

Nexus 6P, Nexus 5X and Pixel C Everything you need to know


Nexus 6P, Nexus 5X and Pixel C  Everything you need to know

Nexus 6P, Nexus 5X and Pixel C Everything you need to know

How to create anything in Android


Course Summary

Here is one important question Android developers ask while making apps: “How can I do ________ in Android?”

The following are versions of this question that we came across recently:

  • How can I add radio buttons to my app?

  • How can I play a sound?

  • How can I navigate between multiple screens?

This course is a collection of such questions and their answers.

By the end of this course you will have mastered the ability to implement new Android features by reading a blog or article — this is a critical skill possessed by professional Android developers. As a result, you will also be able to use several User Interface components — like Toggle Buttons, Menus, Grid View and many more — that are central to making functional and delightful Android apps.

Start Free Course “How to create in Android”

How to create anything in Android