{"id":20497733,"url":"https://github.com/mariodudjak/whereami","last_synced_at":"2026-04-28T17:03:51.682Z","repository":{"id":143771082,"uuid":"90243059","full_name":"MarioDudjak/WhereAmI","owner":"MarioDudjak","description":"Android app for showing current location on the Google Map. Application also shows GPS coordinates and user's address and allows user to put markers on a map.","archived":false,"fork":false,"pushed_at":"2017-05-08T08:31:17.000Z","size":2210,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-16T06:31:50.112Z","etag":null,"topics":["android","android-application","android-studio","androidcamera","geocoder","google-maps-api","gps-location","java","notification-android"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MarioDudjak.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-05-04T09:03:31.000Z","updated_at":"2022-08-11T06:59:00.000Z","dependencies_parsed_at":null,"dependency_job_id":"5d007f26-be6e-46ae-8bac-03c5920e03ad","html_url":"https://github.com/MarioDudjak/WhereAmI","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MarioDudjak%2FWhereAmI","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MarioDudjak%2FWhereAmI/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MarioDudjak%2FWhereAmI/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MarioDudjak%2FWhereAmI/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MarioDudjak","download_url":"https://codeload.github.com/MarioDudjak/WhereAmI/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242087914,"owners_count":20069722,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["android","android-application","android-studio","androidcamera","geocoder","google-maps-api","gps-location","java","notification-android"],"created_at":"2024-11-15T18:11:53.180Z","updated_at":"2026-04-28T17:03:46.662Z","avatar_url":"https://github.com/MarioDudjak.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# WhereAmI\n\nApp description:\n\nAndroid app for showing current location on the Google Map.\nApplication also shows GPS coordinates and user's address and allows user to put markers on a map.\n\n\nDescription of program solutions \u0026 problems:\n\n*User interface:\n\nUser interface consists of 2 TextViews and 1 Fragment.\nOne TextView is for GPS coordinates of user's current position.(Latitude and Longitude)\nAnother TextView is for user's address (Street address, city and country).\nFragment is used for working with map.\n\n\n*Working with maps\n\nGoogle API for Maps is used for working with maps. \nIt was first necessary to register for developer key which is than defined in app's manifest.\nAnd also before using maps, it was necessary to add external play-services library.\nIn the layout file a fragment is set which is later used for representing a map, and it is special type of fragment - the one in a gms.map namespace.\nIn the app's MainActivity a fragment is retrieved and than a listener for GoogleMap object is set.\nMap retrieving is asynchronous and a callback method onMapReady is used through interface which Activity implements.\nBy clicking on a map a marker is created with a same icon as a app's icon. \n\nSource: https://loomen.carnet.hr/pluginfile.php/787643/mod_resource/content/2/LV5%20-%20predlo%C5%BEak%20%282017%29.pdf\n\n\n*Working with GPS\n\nTo get GPS coordinates of a device, it is first neccesary to ask permission for accessing location, inside manifest file.\nAfter that, using an object of the LocationManager class the location can be sought.\nTo start and to stop listening on a location appearing a LocationListener object is set and removed. \nDuring app's working time (while the MainActivity is active) GPS coordinates are shown on appropriate TextView.\nTracking stops in onPause method.\n\nSource: https://loomen.carnet.hr/pluginfile.php/787643/mod_resource/content/2/LV5%20-%20predlo%C5%BEak%20%282017%29.pdf\n\n\n*Working with Geocoder \n\nGeocoding is done using a Geocoder class. When using Geocoder class it is necessary to check if the class is defined in a system. \nIf it is, than it is possible to instantiate object of Geocoder class and forward appropriate location to that object.\nTransforming GPS coordinates to location is done on a remote server and the permission for accessing Internet is required.\nDecoding GPS coordinates for a result returns a list of objects of Address class, and every object contains information about that location such as: country, city, street address...\n\nSource: https://loomen.carnet.hr/pluginfile.php/787643/mod_resource/content/2/LV5%20-%20predlo%C5%BEak%20%282017%29.pdf\n\n\n*Working with Camera\n\nBefore starting development on your application with the Camera API, you should make sure your manifest has the appropriate declarations to allow use of camera hardware and other related features.\nThe Android way of delegating actions to other applications is to invoke an Intent that describes what you want done. \nThis process involves three pieces: The Intent itself, a call to start the external Activity, and some code to handle the image data when focus returns to your activity.\nThe Android Camera application saves a full-size photo if you give it a file to save into. You must provide a fully qualified file name where the camera app should save the photo.\nGenerally, any photos that the user captures with the device camera should be saved on the device in the public external storage so they are accessible by all apps. \nThe proper directory for shared photos is provided by getExternalStoragePublicDirectory(), with the DIRECTORY_PICTURES argument. \nBecause the directory provided by this method is shared among all apps, reading and writing to it requires the READ_EXTERNAL_STORAGE and WRITE_EXTERNAL_STORAGE permissions, respectively. \n\nSource: https://developer.android.com/training/camera/photobasics.html\n\n\n*Working with Notifications\n\nNotifications are created and managed using NotificationManager class.\nThat class allows showing a notification, and for its creating the Notification.Builder class is used.\nWhile creating, some basic information about notification are defined. (Such as: text, title, icon, vibration sample,...).\nAlso, a PendingIntent concept is used for triggering at a later time.\nIt can be triggered by an app which created that intent. \n\nSource : https://loomen.carnet.hr/pluginfile.php/787643/mod_resource/content/2/LV5%20-%20predlo%C5%BEak%20%282017%29.pdf","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmariodudjak%2Fwhereami","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmariodudjak%2Fwhereami","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmariodudjak%2Fwhereami/lists"}