Showing posts with label Location aware apps. Show all posts
Showing posts with label Location aware apps. Show all posts

Thursday, December 15, 2016

Vehicle Tracking - GPS Units vs Smartphone Applications


As we know now a days vehicle tracking is being important for businesses and users.

All the businesses want to know 

  • Where their vehicles are?
  • How much they travelled?
  • What route they have taken?
  • Is it cost effective route?
  • How they can reduce fuel expenses?

All the end users want to know

  • When the item will be delivered?
  • What is the current status and where it reached?
  • How much more time will it take?
So most the business are looking for GPS based tracking system for their vehicles. Now it leads to a question that what is the effective tracking solution? 

A Standalone and embedded GPS unit or A Smartphone Application

This blog will clarify more on this and help you decide the best solution for you. 

First of all lets see what is Embedded GPS Unit.



GPS unit is device with it's own operating system, display and sender and receiver to track users. It can be in the small chip that can be installed in your vehicle and that can communicate with GPS satellite and your location to predefined receiver.

It can be simple device with display and some kind of configurable panel where user can interact with it and can change settings of it. In any case stand alone GPS units are specially designed devices with it's own chip sets and all. It has to be manufactured from scratch.

What is Smartphone Application



Now a days all smart phones like Android, iOS have capability of interacting with GPS satellites so based on this there are smart phone applications which can take advantage of GPS capability and can be used to track mobile locations. This smartphone application can be developed easily and can work with any type of servers and easy to maintain. Basically this application will work on background and will send location information for tracking.
Here are some vital comparisons on both approach. 

-->


GPS Units Smartphone Applications
Cost High No Cost to Moderate Cost
Accuracy High Moderate to High
Special Hardwares Mandatory Not required
Compatibility No Yes
Human Interference Not Possible Moderate
Maintenance Required Not Required

As you can see in above table GPS units are not cost effective as it needs special hardware and embedded system designs. However in case of mobile app your smartphone works as hardware. 

Accuracy is much higher in case of GPS units as it's built with spacial hardwares, while smart phone apps depends on phone hardware and in some devices it may not give accurate result.

Special hardware designs are required for GPS units which is not required in case of smart phone apps. Also GPS units designed with some hardware may not be compatible with other hardwares, which is not a case for smartphone apps. It works on almost all the platforms and all the devices.

Biggest advantage of stand alone GPS unit is almost no human interference, as this is the embedded systems so users can not hack or cheat with it. While smartphone apps can be hacked by user interface, For example, user can kill background services in phone or can switch off phone GPS etc. so user can not be tracked.

Wednesday, September 9, 2015

Introducing Tagsum - GPS Location Tagging

Hello,

This blog is about my company's product. After we introduced following two products.

Adsum
Tracksum

Here is our next product Tagsum - GPS Location Tagging. This app is helpful in tagging the required location with exact latitude and longitude.

This app is helpful in tagging the required location with exact latitude and longitude of the desired location. Very useful app for field survey in remote locations. You don't need special GPS devices to locate locations now. If you have smart phone just install this app and use it. It uses standard GPS services so you get very accurate locations. Locations added with this app can be downloaded in excel files later from admin panel.

Also in admin panel you can create routes with tagged location and can plot path on Google map with standard markings.

Also you can preload your locations in app and tag it with latitude and longitude from the application. So you can update your locations or add new locations.  This application can be used in various domains and fields like.

Field Survey
Geological Survey
Map building.
City Paths Creation etc..

Major benefit of our app is that you will get admin panel where you can maintain your app users, you can add/update/delete users, can see tagged locations, can create add new locations for tagging, can create paths. When you create path it will also calculate total kms for the path. This gives you much more flexibility. Your data will be confidential and only you can see that in admin panel.

So if you need this app please install app from Google Play Store. App is available from following link.

https://play.google.com/store/apps/details?id=com.tagsum.app&hl=en

And get back to us for admin panel access.


Thursday, January 1, 2015

Android Geofence Stop Getting Transition Events After Some Time

And here comes the first technical blog of 2015, Recently in one of our android application we have used Geofences in Android application. The app needs to track entry and exit of device in Geofence. After implementing and configuring Geofences by help of the sample code from android developer site, it worked good for some time but after the app is running for long time suddenly no transitions were recorded even though the device was in Geofence. After looking for the reason for few hours, I finally found a solution, in this blog I am going to mention that.

The issue was with IntentService mentioned in example code. When your device enters into Geofence, this intent service gets called with pending intent. It works good if your app is in foreground but when the app is in background, this IntentService is never called. So to overcome with this shortcomings, we have used Broadcast receiver in stead of IntentService.

So first define BroadcastReceiver in Manifest file.

<receiver
            android:name="com.app.appname.GeofenceReceiver"
            android:exported="false" >
            <intent-filter>
                <action android:name="com.tracksum.vehicletrack.GeofenceReceiver.ACTION_RECEIVE_GEOFENCE" />
            </intent-filter>

        </receiver>

Now create this class in your package. 

public class GeofenceReceiver extends BroadcastReceiver {

   public void onReceive(Context context, Intent intent) {
       if (LocationClient.hasError(intent)) {
           handleError(intent);
       } else {
           handleEnterExit(intent);
       }
   }

    private void handleError(Intent intent){
       
    }

   private void handleEnterExit(Intent intent) {
       int transition = LocationClient.getGeofenceTransition(intent);
       if (transition == Geofence.GEOFENCE_TRANSITION_ENTER){
           Log.v("geofence","entered");
       }else if(transition == Geofence.GEOFENCE_TRANSITION_EXIT){
           Log.v("geofence","exited");
       }
   }
}

This is your broadcast receiver. Now create an intent and pending intent with this.

Intent intent = new Intent("com.app.appname.GeofenceReceiver.ACTION_RECEIVE_GEOFENCE");

PendingIntent geoFencePendingIntent = PendingIntent.getBroadcast( getApplicationContext(), 0,                                                                             intent, PendingIntent.FLAG_UPDATE_CURRENT);

Add this to location client while adding geofences.

mLocationClient.addGeofences(geofenceList, geoFencePendingIntent, this);

That's it and now you will get all the transitions of Geofence if your app is not in foreground.