Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

📡 Lightweight GPS Logging Application For Android. Available on the Android Market as "GPSLogger for Android"

License

NotificationsYou must be signed in to change notification settings

jrocha/gpslogger

 
 

Repository files navigation

GPSLogger is an Android app that logs GPS information to various formats (GPX, KML, CSV, NMEA, Custom URL) and has options for uploading (SFTP, Google Drive, Dropbox, Email). This app aims to be as battery efficient as possible.

Read about GPSLogger's features here

Download

You candownload it from Google Play.

You can download directlyfrom the releases.

You can find it onIzzySoft's F-Droid repo (link)

Contribute

You can help withtranslations on Crowdin.

You can also submitpull requests for bug fixes and new features.

I'm not very good at UIs, so any work with the layouts would be appreciated!

License and policy

Licensed under GPL v2 |Third party licenses |Privacy policy

Donate

Bitcoin |Paypal |LTC

Verifying

It's good practice to verify downloads. In recent releases, a PGP signature and an SHA256 checksum will accompany each.apk.

Import PGP Public Key fromKeybase.io or justgpg --recv-key 6989CF77490369CFFDCBCD8995E7D75C76CBE9A9

To verify the integrity and signature:

$ gpg --verify ~/Downloads/gpslogger-71.apk.asc

To verify checksum:

$ sha256sum -c ~/Downloads/gpslogger-71.apk.SHA256

Setting up the code

The project is based on theAndroid build system plugin for Gradle.Feel free to adopt and document your own OS and IDEs. These instructions are for Ubuntu Linux with IntelliJ IDEA.

Set up your Android Development Environment

Follow the instructions on theAndroid Developer Website to set up your computer for development.

intellij

Download and installIntelliJ IDEA Community Edition, which is free.

Clone the GPSLogger repository

git clone git://github.com/mendhak/gpslogger.git

Get the Android SDK extra repositories

This project uses certain Android libraries, you can install them using Google's poorly implementedsdkmanager:

  echo y | $HOME/android-sdk/tools/bin/sdkmanager 'tools'  echo y | $HOME/android-sdk/tools/bin/sdkmanager 'platform-tools'  echo y | $HOME/android-sdk/tools/bin/sdkmanager 'build-tools;26.0.2'  echo y | $HOME/android-sdk/tools/bin/sdkmanager 'platforms;android-23'  echo y | $HOME/android-sdk/tools/bin/sdkmanager 'extras;google;m2repository'  echo y | $HOME/android-sdk/tools/bin/sdkmanager 'extras;android;m2repository'  echo y | $HOME/android-sdk/tools/bin/sdkmanager 'extras;google;google_play_services'

Create local.properties

Create a file calledlocal.properties, pointing at your Android SDK directory.

cd gpsloggerecho "sdk.dir=/home/mendhak/Programs/Android" > local.properties

Import the project

Open up IntelliJ and choose to import a project. Select the topmostbuild.gradle file under GPSLogger.

If you get an Import dialog, choose toImport project from external model

import

On the next screen, choose the defaults and proceed (default gradle wrapper)

import

Give it a minute and IntelliJ/Gradle will configure the projects and download the various libraries.

IntelliJ may not know where your Android SDK is. You can find this underFile > Project Structure... where you should set the Project SDK. You will want to use Java 1.6 with Android 4 or above.

OpenStreetMap Setup (Optional)

Sign up for an account withOpenStreetMap and log in.

Click on 'oauth settings'

Click on 'Register your application'

Fill in the form with these details

Oauth settings

After registering the application, you will receive a 'Consumer Key' and a 'Consumer Secret'.
Place the keys in your~/.gradle/gradle.properties like this:

GPSLOGGER_OSM_CONSUMERKEY=abcdefghGPSLOGGER_OSM_CONSUMERSECRET=1234123456

Dropbox Setup (Optional)

Sign up for an account with Dropbox.com

Go to theDropbox Developers page and click on 'Create an App'

Use these settings, but choose a unique name

Dropbox settings

After creating the app, you will receive an app key and secret (the ones in the screenshot are fake)

Dropbox settings

Place the keys in your~/.gradle/gradle.properties like this:

GPSLOGGER_DROPBOX_APPKEY=abcdefghGPSLOGGER_DROPBOX_APPSECRET=1234123456

Replace the Dropbox app key to your AndroidManifest.xml file

<!-- Change this to be db- followed by your app key --><data android:scheme="db-12341234"/>

Google Docs/Drive Setup (Optional)

Go to theGoogle APIs Console and create a new project.

After registering a project, click on API Access and click the 'Create another Client ID' button

Choose "Installed Application" and then under Installed Application Type, choose "Android". Follow the instructions underLearn More to specify the package name andthe SHA1 fingerprint of your debug certificate.

GAPI Console

The Google Docs feature requires theGoogle Play Services Framework,so ensure that the emulator you are using is Android 4.2.2 (API level 17) or greater if you want to use this feature.

AVD

You can also debug directly against your phone - all phones Android 2.2 and above should have this framework installed.

Overview

GPSLogger is composed of a few main components;

design

Event Bus

The Event Bus is where all the cross communication happens. Various components raise their events on the Event Bus,and other parts of the application listen for those events. The most important one is when a location is obtained,it is placed on the event bus and consumed by many fragments.

GPS Logging Service

GPSLoggingService is where all the work happens. This service talks to the location providers (network and satellite).It sets up timers and alarms for the next GPS point to be requested. It passes location info to the various loggersso that they can write files. It also invokes the auto-uploaders so that they may send their files to Dropbox, etc.

It also passes information to the Event Bus.

GPS Main Activity

This is the main visible form in the app. It consists of several 'fragments' - the simple view, detailed view and big view.

It takes care of the main screen, the menus and toolbars.

The fragments listen to the Event Bus for location changes and display it in their own way.

Session and AppSettings

Floating about are two other objects.Session contains various pieces of information related to the current GPSLogger run,such as current file name, the last known location, satellite count, and any other information which isn't static but isneeded for the current run of GPSLogger.

AppSettings is a representation of the user's preferences.

These objects are visible throughout the application and can be accessed directly by any class, service, activity or fragment.

About

📡 Lightweight GPS Logging Application For Android. Available on the Android Market as "GPSLogger for Android"

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java96.1%
  • CSS2.4%
  • Other1.5%

[8]ページ先頭

©2009-2025 Movatter.jp