Offline Map Generation for Navigation in Android Mobile Device for Electricity Utility

DOI : 10.17577/IJERTCONV3IS27003

Download Full-Text PDF Cite this Publication

Text Only Version

Offline Map Generation for Navigation in Android Mobile Device for Electricity Utility

Manasa M

MTech(CE)4th sem

Dept of Computer Science & Engineering

SJB Institute of Technology, Bangalore-60

Abstract : The offline map generation is a mobile application that can be used in order to search and establish locations of customers for electricity utility meter readers and officers. Maps will be generated centrally and same will be loaded to the mobile device. System will have centralized data storage of all client information (Name, Address, GPS Coordinates) to speed up the process of electricity bill distribution & Payment collection to make billing more efficient.

Keywords: Electricity Utility, SHA 1 Finger Print Certificate, Google Map Android API V2, API Key.


Electricity Billing System is a system which considers several factors such as one unit of power that is the amount of energy consumed is measured in kilowatt hours which is one unit of electricity. The electricity meter records the consumption in units and same is billed as energy charges. Consumer is billed according to the category and tariff scheduled in force . The Electricity Billing System also considers the Maximum Demand that is the maximum amount of power the consumer has consumed in 30 minutes slot timed from 00 hours by internal clock in the meter during the month. Maximum demand is recorded by Trivector meter.

Many large consumers draw more electrical power than can be actually converted into useful energy, The extra power which does no useful work is called the reactive energy and is measured in reactive units. The reactive energy is related to the power factor of load. The lower the power factor ,the more is the reactive energy.

The tariff for energy is based on average cost of fuel consumed for generation, the delayed payment is also included in billing system, which is the charge at a rate of 1 percent of the total electricity bill amount if the bills are not paid

within due date. Fixed charges are included in billing system which is the maximum amount per month which consumer has to pay even if no electricity is consumed during the month. Energy meters are generally designed to withstand continuously 440 volts and a maximum of 40 Amps current.

The Components of Residential Electricity Billing System are:

  1. Energy Charges.

  2. Fixed Charges.

  3. Fuel Adjustment Charges.

  4. Electricity Duty.

  5. Tax on sale of Electricity.

  6. Delayed Payment Charges.

The Components of Industrial/Commercial consumers consist of:

  1. Maximum Demand Charges.

  2. Energy Charges.

  3. Fixed Charges.

  4. Electricity Duty.

  5. Tax on sale of electricity.

  6. Delayed Payment Charges.

  7. Power Factor Penalty.

    All the above factors are considered in spot billing application in android, which provides all the information about the con-sumer . The spot billing application has four modules billing, collection, others, reports . before going to the modules it considers the verification of imei number from the server. In billing module google map has been used which provides the consumer location on google map. To generate google map the de-bug key is used . that is the android sdk tools generate this certificate automatically when we build and run a project from eclipse.

    Once the SHA 1 fingerprint is obtained is registered in google console api for obtain-ing the api key which is used in manifest file of an application. The google map android api v2 is a api key which provides offline feature it requires internet only for the time loading of map in a application.


      The SBM(SPOT BILLING MACHINE) which was

      used for used for electricity billing system does not provide good user interface , and also processing of continuous consumer data is not much efficient , because of this all the features of spot billing machine is included in spot billing application in android. The spot billing application is done based on features present in SBM[5], all the information is stored centrally to the server. It also considers the verification of imei number of mobile.

      The spot billing application in android uses Google map application to locate the consumer on map , all latitude and longitude values are passed from the server, Google map works based on the api key enabled , the Google console API requires SHA- 1 finger print which is 160 bits length used for authentication purpose by the Google[5] , The Google play also uses this certificate for tracking our application use of resources. Maps API keys are linked to specific certificate and package rather than to users. The maps api key is based on a short form of applications digital certificate known as SHA-1 finger print. This finger print is a unique text string generated from the commonly used SHA-1 Algorithm. To display this certificate the application uses debug key.

      Once the SHA-1 finger print is obtained is registered in google console api after registering we need to enable required api key required for loading map in mobile

      . The google map android api v2 is a key chosen for map generation in android , this key also offers offline feature because only for the first time loading of map require internet later on it is used in offline mode.


      The android sdk tool generates this certificate automatically when we build and run a project from eclipse.

      C:\programfiles\java\jre7\bin\keytool.exe list v alias android debugkey keystore C:\users\file.user\.android\debug.keystore-storepass android keypass android.

      Which is used for obtaining SHA-1 finger print which is also called as digital certificate .

      Google map is also used to display the details of consumer who have arrears on map , and also on click of the marker details of consumer such as RR Number and Name of the consumer is displayed on Google Map, which helps the officers about the location of the consumer as well as details of the consumer, and also Google Map is used in one more application that is Meter Reader application which is used for tracking the meter readers to check the amount they have billed per day and the total number of collection they have made on per day, in this application the meter reader current location is displayed on Google map .


The Google Map application requires Google play service in SDK Manager, and the library of google play service has to be imported to the workspace , and also it uses debug key to generate a 160 bit unique code which is also called as digital certificate, the SHA-1 finger print is a unique code which is used by the google to track our application resource usage .

To access the google maps server with the map api, we need to add maps api key to our application. The key is free we can use it with any number of application except the SHA-1 finger print should be same, the maps API key are linked to specific certificate/package name, rather than to users or applications. Only one key is required for one digital certificate, The maps API key is based on a short form of our applications digital certificate , known as its SHA-1 fingerprint, because fingerprint itself unique, Google maps uses it as a way to identify our application, To display SHA-1 fingerprint we have to use debug certificate .

After obtaining fingerprint we need to create a new project in google console api and enable gogle map android api v2 key.

SHA-1(Secure Hashing Algorithm):

SHA-1 produces the 160 bit hash value original SHA 0 also produces 160 bit hash value, SHA-1 is a cryptographic hash function designed by NSA, it produces 20 byte hash value is typically rendered as a hexadecimal number. A hash function is an algorithm that takes a string of any length and reduces it to a unique fixed length string, hashes are used to ensure data and message integrity, password validity as well as the basis of many other cryptographic systems.

SHA-1 uses fixed variables and converts that into hex decimal value and again it is converted into binary value then at the end of the binary value 1 is appended , but has the SHA-1 requires 512 bits of length remaining zeros are appended , then XOR operation is carried out to produce 160 bit hash value.

SHA1 Example: BB:00:AC:73:d3:21:E1:34:67:72:8B:62:91:AF: A1:66:6E:22:5D:75:25:G2;



Registering in Google Console


Enabling Google Map Android API


API Key is generated


Once obtaining the API key from Google servers it used in manifest file, then Database connection is established for obtaining latitude and longitude values ,queries are written for obtaining the values required for Google map application, based on the latitude and longitude values the markers are placed on map and upon click of the marker the consumer Connection number is obtained and also the meter readers location is obtained for officers.

The Global positioning system (GPS) is used in Google map application for electricity utility , which provides the current location of the meter readers and directions are draw from current location to meter reader location using JSON direction parser method, which provides the direction route for officers for tracking the meter readers, The markers which are placed on map are zoomed to the best so that all markers are visible with the function LatLongBound.

Database Connection

Query for obtaining latlong va

Markers are placed base LatLong value

Current location using GPS



    The spot billing application has all the features of SBM such as billing, collections etc…

    There are four modules 1.Billing 2.Collection 3. Reports 4. Others.

    Before going to modules the login activity begins with verification of mobile imei number from the server if it matches with the imei number present in server it enables login button , to do this VerifyIMEI () function is used.

    1. Billing : All the details of connection id, RRNo, tariff, Load, Metered, customer Name and Address of customer is provided in Billing Module , also the billing button is included for billing the customer bill. and also the status of the customer meter is listed which helps the officers to know about the customer meter status. From home screen when user clicks billing icon, it will load the billing screen. In this screen, user can search for a customer using his Connection id or RR number. User can see the customer details like connection id, RR number, Tariff, Metered or Unmetered, Load and meter Status. Here user can easily move to other customers by clicking next and prev button. Connection id already billed then billing button becomes re-print. By using re- print user can take reprint for the billed connection.

      When user clicks on billing button in billing activity screen it loads Billing Consumption activity. In this screen Status spinner will load based on previous reason. Then user selects status based on that reading, PF edit text will get enabled or disabled. Then user needs to enter reading, PF edit text and then click process button. By clicking process button system will calculate consumption, EC, FC, Tax and Bill total. Then click save button for saving

      bill and print the bill.

      Google map is used in Billing module and GPS is used for locating the current location of officers . The customer is located on google map using marker upon click of marker it displays the connection id of customer.

    2. Collection: On successful synchronization with the server cash counter gets opened and required batch details like batch No, batch date, start time, and end time also cash limits are obtained from server. In this user can search customer by his Connection number or RR number. User can see the customer details like connection number, RR number, Tariff, Metered or Unmetered, Load, Meter Status, Arrears/Balance, Bill Amount and Paid Amount. Here user can easily move to other customer or connection no. by clicking next and prev button. Collection Receipts can be paid using Cash or Cheque. If collection is completed for selected Connection number then Re-print button appears. By using re- print user can take reprint for that Connection number. User can enter payment amount (payment amount must be greater than arrears/balance) and confirm payment. On Clicking Confirm button payment details are saved and sent to server through GPRS. Receipt is also obtained for the cash payment.

    3. Reports : When users click on reports icon list of reports is listed such as Billing report, Not Billed report, Disconnection report, Map Location Disconnection report .

      In Map Location Disconnection report all the customer who have arrears according to subdivision are placed on Google map with best zoom, using LatLongBound function which calculates the northeast and southwest corner and places the marker on map and upon click of the marker the connection id and the name of the customer is displayed.

      In Meter Reader tracker application the current location of the meter reader officers are placed on Google map which works in offline mode and one more thing is Geo coding function is used to display the address of the meter reader as it requires the internet because of this thing map is used for providing the address of meter readers.

    4. Others : In this module user can browse the file, download the file and can place

    it sd card , also Browse and load file present in phone storage(or SD Card) in particular directory, and Write billing data and collection data to a file Spot Billing app specifications(App Version Code ,App Version Name, IMEINo, SIMNO ,File Version, Battery Level) are also provided.


    We consider how to do the electricity billing as well collection in android application with Google map application in efficient way than in SBM , the four modules used in application provides good user interface , and photo billing activity also increases the performance of billing because of exact reading value is giving by capturing the meter reading value, and also the use of Blueetooth function for pairing with printer decreases the over all cost of the device, as the SBM machine is more costlier the use of android mobile and the printer decreases the cost price.


  1. All mobile client, web client, and server use cases.

  2. Android development life cycle document.

  3. Head First Android development .

  4. Android programmer Guide by J.F Di Margo.

  5. Google Map Android developers.

  6. for best zoom to fit all markers.

  7. for obtaining API key.

Leave a Reply