diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/db/DatabaseHelper.java b/app/src/main/java/me/guillaumin/android/osmtracker/db/DatabaseHelper.java
deleted file mode 100644
index 2c2b0dd97..000000000
--- a/app/src/main/java/me/guillaumin/android/osmtracker/db/DatabaseHelper.java
+++ /dev/null
@@ -1,245 +0,0 @@
-package me.guillaumin.android.osmtracker.db;
-
-import java.io.File;
-import java.io.FilenameFilter;
-
-import me.guillaumin.android.osmtracker.OSMTracker;
-import me.guillaumin.android.osmtracker.db.TrackContentProvider.Schema;
-import me.guillaumin.android.osmtracker.db.model.Track.OSMVisibility;
-import me.guillaumin.android.osmtracker.util.FileSystemUtils;
-import android.content.ContentValues;
-import android.content.Context;
-import android.database.Cursor;
-import android.database.sqlite.SQLiteDatabase;
-import android.database.sqlite.SQLiteOpenHelper;
-import android.util.Log;
-
-/**
- * Helper for managing database.
- *
- * @author Nicolas Guillaumin
- *
- */
-public class DatabaseHelper extends SQLiteOpenHelper {
-
- private static final String TAG = DatabaseHelper.class.getSimpleName();
-
- /**
- * SQL for creating table TRACKPOINT
- */
- private static final String SQL_CREATE_TABLE_TRACKPOINT = ""
- + "create table " + Schema.TBL_TRACKPOINT + " ("
- + Schema.COL_ID + " integer primary key autoincrement,"
- + Schema.COL_TRACK_ID + " integer not null,"
- + Schema.COL_LATITUDE + " double not null,"
- + Schema.COL_LONGITUDE + " double not null,"
- + Schema.COL_SPEED + " double null,"
- + Schema.COL_ELEVATION + " double null,"
- + Schema.COL_ACCURACY + " double null,"
- + Schema.COL_TIMESTAMP + " long not null,"
- + Schema.COL_COMPASS + " double null,"
- + Schema.COL_COMPASS_ACCURACY + " integer null"+ ")";
-
- /**
- * SQL for creating index TRACKPOINT_idx (track id)
- * @since 12
- */
- private static final String SQL_CREATE_IDX_TRACKPOINT_TRACK
- = "create index if not exists "
- + Schema.TBL_TRACKPOINT
- + "_idx ON " + Schema.TBL_TRACKPOINT + "(" + Schema.COL_TRACK_ID + ")";
-
- /**
- * SQL for creating table WAYPOINT
- */
- private static final String SQL_CREATE_TABLE_WAYPOINT = ""
- + "create table " + Schema.TBL_WAYPOINT + " ("
- + Schema.COL_ID + " integer primary key autoincrement,"
- + Schema.COL_TRACK_ID + " integer not null,"
- + Schema.COL_UUID + " text,"
- + Schema.COL_LATITUDE + " double not null,"
- + Schema.COL_LONGITUDE + " double not null,"
- + Schema.COL_ELEVATION + " double null,"
- + Schema.COL_ACCURACY + " double null,"
- + Schema.COL_TIMESTAMP + " long not null,"
- + Schema.COL_NAME + " text,"
- + Schema.COL_LINK + " text,"
- + Schema.COL_NBSATELLITES + " integer not null,"
- + Schema.COL_COMPASS + " double null,"
- + Schema.COL_COMPASS_ACCURACY + " integer null"+ ")";
-
- /**
- * SQL for creating index WAYPOINT_idx (track id)
- * @since 12
- */
- private static final String SQL_CREATE_IDX_WAYPOINT_TRACK
- = "create index if not exists "
- + Schema.TBL_WAYPOINT
- + "_idx ON " + Schema.TBL_WAYPOINT + "(" + Schema.COL_TRACK_ID + ")";
-
- /**
- * SQL for creating table TRACK
- * @since 5
- */
- @SuppressWarnings("deprecation")
- private static final String SQL_CREATE_TABLE_TRACK = ""
- + "create table " + Schema.TBL_TRACK + " ("
- + Schema.COL_ID + " integer primary key autoincrement,"
- + Schema.COL_NAME + " text,"
- + Schema.COL_DESCRIPTION + " text,"
- + Schema.COL_TAGS + " text,"
- + Schema.COL_OSM_VISIBILITY + " text default '"+OSMVisibility.Private+"',"
- + Schema.COL_START_DATE + " long not null,"
- + Schema.COL_DIR + " text," // unused since DB_VERSION 13, since SQLite doesn't support to remove a column it will stay for now
- + Schema.COL_ACTIVE + " integer not null default 0,"
- + Schema.COL_EXPORT_DATE + " long," // null indicates not yet exported
- + Schema.COL_OSM_UPLOAD_DATE + " long" // null indicates not yet uploaded
- + ")";
-
- /**
- * Database name.
- */
- public static final String DB_NAME = OSMTracker.class.getSimpleName();
-
- /**
- * Database version.
- * If you change the version, be sure that {@link #onUpgrade(SQLiteDatabase, int, int)} can handle it.
- * Only required for versions after v0.5.0 as before the DB was fully erased and recreated from scratch
- * for each new track.
- *
- * v1: (r117) v0.4.0, v0.4.1
- * v2: add TBL_CONFIG; that table's been dropped since then (r163) v0.4.2
- * v3: add TBL_WAYPOINT.COL_UUID (r187) v0.4.3
- * v5: add TBL_TRACK; TRACKPOINT, WAYPOINT +COL_TRACK_ID (r198)
- * v7: add TBL_TRACK.COL_DIR; drop TBL_CONFIG (r201)
- * v9: add TBL_TRACK.COL_ACTIVE (r206)
- * v12: add TBL_TRACK.COL_EXPORT_DATE, IDX_TRACKPOINT_TRACK, IDX_WAYPOINT_TRACK (r207) v0.5.0
- * v13: TBL_TRACK.COL_DIR is now deprecated (rxxx) v0.5.3 TODO: fill in correct revision and version
- * v14: add TBL_TRACK.COL_OSM_UPLOAD_DATE, TBL_TRACK.COL_DESCRIPTION,
- * TBL_TRACK.COL_TAGS and TBL_TRACK.COL_OSM_VISIBILITY for OSM upload - v0.6.0
- * v15: add TBL_TRACKPOINT.COL_SPEED
- * v16: add TBL_TRACKPOINT.COL_COMPASS, TBL_TRACKPOINT.COL_COMPASS_ACCURACY,
- * TBL_WAYPOINT.COL_COMPASS and TBL_WAYPOINT.COL_COMPASS_ACCURACY
- *
- */
- private static final int DB_VERSION = 16;
-
- public DatabaseHelper(Context context) {
- super(context, DB_NAME, null, DB_VERSION);
- }
-
- @Override
- public void onCreate(SQLiteDatabase db) {
- db.execSQL("drop table if exists " + Schema.TBL_TRACKPOINT);
- db.execSQL(SQL_CREATE_TABLE_TRACKPOINT);
- db.execSQL(SQL_CREATE_IDX_TRACKPOINT_TRACK);
- db.execSQL("drop table if exists " + Schema.TBL_WAYPOINT);
- db.execSQL(SQL_CREATE_TABLE_WAYPOINT);
- db.execSQL(SQL_CREATE_IDX_WAYPOINT_TRACK);
- db.execSQL("drop table if exists " + Schema.TBL_TRACK);
- db.execSQL(SQL_CREATE_TABLE_TRACK);
- }
-
- @Override
- public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
- switch(oldVersion){
- case 1:
- case 2:
- case 3:
- case 4:
- case 5:
- case 6:
- case 7:
- case 8:
- case 9:
- case 10:
- case 11: //pre v0.5.0 (completely create a new database)
- onCreate(db);
- break;
- case 12:
- manageNewStoragePath(db);
- case 13:
- // Create 'osm_upload_date', 'description', 'tags' and 'visibility'
- db.execSQL("alter table " + Schema.TBL_TRACK + " add column " + Schema.COL_OSM_UPLOAD_DATE+ " long");
- db.execSQL("alter table " + Schema.TBL_TRACK + " add column " + Schema.COL_DESCRIPTION + " text");
- db.execSQL("alter table " + Schema.TBL_TRACK + " add column " + Schema.COL_TAGS + " text");
- db.execSQL("alter table " + Schema.TBL_TRACK + " add column " + Schema.COL_OSM_VISIBILITY
- + " text default '"+OSMVisibility.Private+"'");
- case 14:
- db.execSQL("alter table " + Schema.TBL_TRACKPOINT + " add column " + Schema.COL_SPEED + " double null");
- case 15:
- db.execSQL("alter table " + Schema.TBL_TRACKPOINT + " add column " + Schema.COL_COMPASS + " double null");
- db.execSQL("alter table " + Schema.TBL_TRACKPOINT + " add column " + Schema.COL_COMPASS_ACCURACY + " integer null");
- db.execSQL("alter table " + Schema.TBL_WAYPOINT + " add column " + Schema.COL_COMPASS + " double null");
- db.execSQL("alter table " + Schema.TBL_WAYPOINT + " add column " + Schema.COL_COMPASS_ACCURACY + " integer null");
- }
-
- }
-
- /**
- * copies files from the tracks to our new storage directory and removes the path reference in COL_DIR
- * @param db the database to work on
- */
- @SuppressWarnings("deprecation")
- private void manageNewStoragePath(SQLiteDatabase db){
- Log.d(TAG,"manageNewStoragePath");
-
- // we'll need this FilenameFitler to clean up our track directory
- FilenameFilter gpxFilenameFilter = new FilenameFilter() {
- @Override
- public boolean accept(File dir, String filename) {
- if(filename.toLowerCase().endsWith(".gpx"))
- return true;
- return false;
- }
- };
-
- // query all tracks
- String[] columns = new String[]{Schema.COL_ID, Schema.COL_DIR};
- Cursor cursor = db.query(Schema.TBL_TRACK, columns, null, null, null, null, null);
-
- // if we have a valid cursor and can write to the sdcard, we'll go on and try to copy the files
- if(cursor != null && cursor.moveToFirst()){
- Log.d(TAG, "manageNewStoragePath (found " + cursor.getCount() + " tracks to be processed)");
- do{
- long trackId = cursor.getLong(cursor.getColumnIndex(Schema.COL_ID));
- Log.d(TAG,"manageNewStoragePath (" + trackId + ")");
- String oldDirName = cursor.getString(cursor.getColumnIndex(Schema.COL_DIR));
- File newDir = DataHelper.getTrackDirectory(trackId);
- File oldDir = new File(oldDirName);
- if(oldDir.exists() && oldDir.canRead()){
-
- // if our new directory doesn't exist, we'll create it
- if(!newDir.exists())
- newDir.mkdirs();
-
- if(newDir.exists() && newDir.canWrite()){
- Log.d(TAG,"manageNewStoragePath (" + trackId + "): copy directory");
- // we'll first copy all files to our new storage area... we'll clean up later
- FileSystemUtils.copyDirectoryContents(newDir, oldDir);
-
- // cleaning up new storage area
- // find gpx files we accidentally copied to our new storage area and delete them
- for(File gpxFile:newDir.listFiles(gpxFilenameFilter)){
- Log.d(TAG,"manageNewStoragePath (" + trackId + "): deleting gpx file ["+gpxFile+"]");
- gpxFile.delete();
- }
- }else{
- Log.e(TAG, "manageNewStoragePath (" + trackId + "): directory ["+newDir+"] is not writable or could not be created");
- }
-
- }
- }while(cursor.moveToNext());
- }
-
- //close cursor
- if(cursor !=null && !cursor.isClosed()){
- cursor.close();
- }
-
- ContentValues vals = new ContentValues();
- vals.putNull(Schema.COL_DIR);
- db.update(Schema.TBL_TRACK, vals, null, null);
- }
-
-}
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/OSMTracker.java b/app/src/main/java/org/osmtracker/OSMTracker.java
similarity index 97%
rename from app/src/main/java/me/guillaumin/android/osmtracker/OSMTracker.java
rename to app/src/main/java/org/osmtracker/OSMTracker.java
index 59f2ffc8d..0333fd03b 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/OSMTracker.java
+++ b/app/src/main/java/org/osmtracker/OSMTracker.java
@@ -1,4 +1,4 @@
-package me.guillaumin.android.osmtracker;
+package org.osmtracker;
/**
@@ -44,7 +44,7 @@ public static final class Preferences {
// Default values
public final static String VAL_STORAGE_DIR = "/osmtracker";
public final static String VAL_VOICEREC_DURATION = "2";
- public final static String VAL_UI_THEME = "me.guillaumin.android.osmtracker:style/DefaultTheme";
+ public final static String VAL_UI_THEME = "org.osmtracker:style/DefaultTheme";
public final static boolean VAL_GPS_CHECKSTARTUP = true;
public final static boolean VAL_GPS_IGNORE_CLOCK = false;
public final static String VAL_GPS_LOGGING_INTERVAL = "0";
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/activity/About.java b/app/src/main/java/org/osmtracker/activity/About.java
similarity index 92%
rename from app/src/main/java/me/guillaumin/android/osmtracker/activity/About.java
rename to app/src/main/java/org/osmtracker/activity/About.java
index d7795b647..df0ce4cfe 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/activity/About.java
+++ b/app/src/main/java/org/osmtracker/activity/About.java
@@ -1,22 +1,20 @@
-package me.guillaumin.android.osmtracker.activity;
+package org.osmtracker.activity;
-import me.guillaumin.android.osmtracker.OSMTracker;
-import me.guillaumin.android.osmtracker.R;
-import me.guillaumin.android.osmtracker.db.DatabaseHelper;
-import me.guillaumin.android.osmtracker.db.ExportDatabaseTask;
+import org.osmtracker.OSMTracker;
+import org.osmtracker.R;
+import org.osmtracker.db.DatabaseHelper;
+import org.osmtracker.db.ExportDatabaseTask;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.app.ProgressDialog;
import android.content.DialogInterface;
-import android.content.Intent;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager.NameNotFoundException;
import android.os.Bundle;
import android.os.Environment;
import android.preference.PreferenceManager;
-import android.provider.Settings;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/activity/DisplayTrack.java b/app/src/main/java/org/osmtracker/activity/DisplayTrack.java
similarity index 73%
rename from app/src/main/java/me/guillaumin/android/osmtracker/activity/DisplayTrack.java
rename to app/src/main/java/org/osmtracker/activity/DisplayTrack.java
index 844d6e06c..407418bf9 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/activity/DisplayTrack.java
+++ b/app/src/main/java/org/osmtracker/activity/DisplayTrack.java
@@ -1,9 +1,10 @@
-package me.guillaumin.android.osmtracker.activity;
+package org.osmtracker.activity;
+
+import org.osmtracker.OSMTracker;
+import org.osmtracker.util.ThemeValidator;
+import org.osmtracker.view.DisplayTrackView;
+import org.osmtracker.db.TrackContentProvider;
-import me.guillaumin.android.osmtracker.OSMTracker;
-import me.guillaumin.android.osmtracker.db.TrackContentProvider.Schema;
-import me.guillaumin.android.osmtracker.util.ThemeValidator;
-import me.guillaumin.android.osmtracker.view.DisplayTrackView;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
@@ -36,10 +37,10 @@ protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Create special view and displays it
- final long trackId = getIntent().getExtras().getLong(Schema.COL_TRACK_ID);
+ final long trackId = getIntent().getExtras().getLong(TrackContentProvider.Schema.COL_TRACK_ID);
DisplayTrackView dtv = new DisplayTrackView(this, trackId);
dtv.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
- setTitle(getTitle() + ": #" + getIntent().getExtras().getLong(Schema.COL_TRACK_ID));
+ setTitle(getTitle() + ": #" + getIntent().getExtras().getLong(TrackContentProvider.Schema.COL_TRACK_ID));
setContentView(dtv);
// If this is the first time showing this activity,
@@ -52,16 +53,16 @@ protected void onCreate(Bundle savedInstanceState) {
@Override
public void run() {
new AlertDialog.Builder(DisplayTrack.this)
- .setTitle(me.guillaumin.android.osmtracker.R.string.prefs_displaytrack_osm)
- .setMessage(me.guillaumin.android.osmtracker.R.string.prefs_displaytrack_osm_summary_ask)
+ .setTitle(org.osmtracker.R.string.prefs_displaytrack_osm)
+ .setMessage(org.osmtracker.R.string.prefs_displaytrack_osm_summary_ask)
.setNegativeButton(android.R.string.no, null)
- .setPositiveButton(me.guillaumin.android.osmtracker.R.string.displaytrack_map, new DialogInterface.OnClickListener() {
+ .setPositiveButton(org.osmtracker.R.string.displaytrack_map, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
PreferenceManager.getDefaultSharedPreferences(DisplayTrack.this).edit()
.putBoolean(OSMTracker.Preferences.KEY_UI_DISPLAYTRACK_OSM, true).commit();
Intent i = new Intent(DisplayTrack.this, DisplayTrackMap.class);
- i.putExtra(Schema.COL_TRACK_ID, trackId);
+ i.putExtra(TrackContentProvider.Schema.COL_TRACK_ID, trackId);
startActivity(i);
finish(); // DisplayTrackMap replaces our activity
}
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/activity/DisplayTrackMap.java b/app/src/main/java/org/osmtracker/activity/DisplayTrackMap.java
similarity index 92%
rename from app/src/main/java/me/guillaumin/android/osmtracker/activity/DisplayTrackMap.java
rename to app/src/main/java/org/osmtracker/activity/DisplayTrackMap.java
index 072c28abc..9f142a066 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/activity/DisplayTrackMap.java
+++ b/app/src/main/java/org/osmtracker/activity/DisplayTrackMap.java
@@ -1,14 +1,13 @@
-package me.guillaumin.android.osmtracker.activity;
+package org.osmtracker.activity;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.List;
-import me.guillaumin.android.osmtracker.OSMTracker;
-import me.guillaumin.android.osmtracker.R;
-import me.guillaumin.android.osmtracker.db.TrackContentProvider;
-import me.guillaumin.android.osmtracker.db.TrackContentProvider.Schema;
-import me.guillaumin.android.osmtracker.overlay.WayPointsOverlay;
+import org.osmtracker.OSMTracker;
+import org.osmtracker.R;
+import org.osmtracker.db.TrackContentProvider;
+import org.osmtracker.overlay.WayPointsOverlay;
import org.osmdroid.api.IMapController;
import org.osmdroid.tileprovider.tilesource.ITileSource;
@@ -112,7 +111,7 @@ public class DisplayTrackMap extends Activity {
/**
* OSM view overlay that displays waypoints
*/
- private WayPointsOverlay wayPointsOverlay;
+ private WayPointsOverlay wayPointsOverlay;
/**
* Current track id
@@ -161,7 +160,7 @@ public void onCreate(Bundle savedInstanceState) {
setContentView(R.layout.displaytrackmap);
- currentTrackId = getIntent().getExtras().getLong(Schema.COL_TRACK_ID);
+ currentTrackId = getIntent().getExtras().getLong(TrackContentProvider.Schema.COL_TRACK_ID);
setTitle(getTitle() + ": #" + currentTrackId);
// Initialize OSM view
@@ -377,20 +376,20 @@ private void pathChanged() {
double minLat = 91.0, minLon = 181.0;
double maxLat = -91.0, maxLon = -181.0;
if ((! zoomedToTrackAlready) && (lastTrackPointIdProcessed == null)) {
- final String[] proj_active = {Schema.COL_ACTIVE};
+ final String[] proj_active = {TrackContentProvider.Schema.COL_ACTIVE};
Cursor cursor = getContentResolver().query(
ContentUris.withAppendedId(TrackContentProvider.CONTENT_URI_TRACK, currentTrackId),
proj_active, null, null, null);
if (cursor.moveToFirst()) {
doInitialBoundsCalc =
- (cursor.getInt(cursor.getColumnIndex(Schema.COL_ACTIVE)) == Schema.VAL_TRACK_INACTIVE);
+ (cursor.getInt(cursor.getColumnIndex(TrackContentProvider.Schema.COL_ACTIVE)) == TrackContentProvider.Schema.VAL_TRACK_INACTIVE);
}
cursor.close();
}
// Projection: The columns to retrieve. Here, we want the latitude,
// longitude and primary key only
- String[] projection = {Schema.COL_LATITUDE, Schema.COL_LONGITUDE, Schema.COL_ID};
+ String[] projection = {TrackContentProvider.Schema.COL_LATITUDE, TrackContentProvider.Schema.COL_LONGITUDE, TrackContentProvider.Schema.COL_ID};
// Selection: The where clause to use
String selection = null;
// SelectionArgs: The parameter replacements to use for the '?' in the selection
@@ -411,16 +410,16 @@ private void pathChanged() {
// Retrieve any points we have not yet seen
Cursor c = getContentResolver().query(
TrackContentProvider.trackPointsUri(currentTrackId),
- projection, selection, selectionArgs, Schema.COL_ID + " asc");
+ projection, selection, selectionArgs, TrackContentProvider.Schema.COL_ID + " asc");
int numberOfPointsRetrieved = c.getCount();
if (numberOfPointsRetrieved > 0 ) {
c.moveToFirst();
double lastLat = 0;
double lastLon = 0;
- int primaryKeyColumnIndex = c.getColumnIndex(Schema.COL_ID);
- int latitudeColumnIndex = c.getColumnIndex(Schema.COL_LATITUDE);
- int longitudeColumnIndex = c.getColumnIndex(Schema.COL_LONGITUDE);
+ int primaryKeyColumnIndex = c.getColumnIndex(TrackContentProvider.Schema.COL_ID);
+ int latitudeColumnIndex = c.getColumnIndex(TrackContentProvider.Schema.COL_LATITUDE);
+ int longitudeColumnIndex = c.getColumnIndex(TrackContentProvider.Schema.COL_LONGITUDE);
// Add each new point to the track
while(!c.isAfterLast()) {
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/activity/OpenStreetMapUpload.java b/app/src/main/java/org/osmtracker/activity/OpenStreetMapUpload.java
similarity index 82%
rename from app/src/main/java/me/guillaumin/android/osmtracker/activity/OpenStreetMapUpload.java
rename to app/src/main/java/org/osmtracker/activity/OpenStreetMapUpload.java
index 7255521a0..3ef18ea50 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/activity/OpenStreetMapUpload.java
+++ b/app/src/main/java/org/osmtracker/activity/OpenStreetMapUpload.java
@@ -1,16 +1,15 @@
-package me.guillaumin.android.osmtracker.activity;
+package org.osmtracker.activity;
+
+import org.osmtracker.OSMTracker;
+import org.osmtracker.R;
+import org.osmtracker.db.TrackContentProvider;
+import org.osmtracker.db.model.Track;
+import org.osmtracker.gpx.ExportToTempFileTask;
+import org.osmtracker.osm.OpenStreetMapConstants;
+import org.osmtracker.osm.RetrieveAccessTokenTask;
+import org.osmtracker.osm.RetrieveRequestTokenTask;
+import org.osmtracker.osm.UploadToOpenStreetMapTask;
-import me.guillaumin.android.osmtracker.OSMTracker;
-import me.guillaumin.android.osmtracker.R;
-import me.guillaumin.android.osmtracker.db.TrackContentProvider;
-import me.guillaumin.android.osmtracker.db.TrackContentProvider.Schema;
-import me.guillaumin.android.osmtracker.db.model.Track;
-import me.guillaumin.android.osmtracker.db.model.Track.OSMVisibility;
-import me.guillaumin.android.osmtracker.gpx.ExportToTempFileTask;
-import me.guillaumin.android.osmtracker.osm.OpenStreetMapConstants;
-import me.guillaumin.android.osmtracker.osm.RetrieveAccessTokenTask;
-import me.guillaumin.android.osmtracker.osm.RetrieveRequestTokenTask;
-import me.guillaumin.android.osmtracker.osm.UploadToOpenStreetMapTask;
import oauth.signpost.OAuth;
import oauth.signpost.commonshttp.CommonsHttpOAuthConsumer;
import oauth.signpost.commonshttp.CommonsHttpOAuthProvider;
@@ -42,7 +41,7 @@ public class OpenStreetMapUpload extends TrackDetailEditor {
private static final String TAG = OpenStreetMapUpload.class.getSimpleName();
/** URL that the browser will call once the user is authenticated */
- private static final String OAUTH_CALLBACK_URL = "osmtracker://osm-upload/oath-completed/?"+Schema.COL_TRACK_ID+"=";
+ private static final String OAUTH_CALLBACK_URL = "osmtracker://osm-upload/oath-completed/?"+ TrackContentProvider.Schema.COL_TRACK_ID+"=";
private static final CommonsHttpOAuthProvider oAuthProvider = new CommonsHttpOAuthProvider(
OpenStreetMapConstants.OAuth.Urls.REQUEST_TOKEN_URL,
@@ -87,10 +86,10 @@ public void onClick(View v) {
* @return
*/
private long getTrackId() {
- if (getIntent().getExtras() != null && getIntent().getExtras().containsKey(Schema.COL_TRACK_ID)) {
- return getIntent().getExtras().getLong(Schema.COL_TRACK_ID);
+ if (getIntent().getExtras() != null && getIntent().getExtras().containsKey(TrackContentProvider.Schema.COL_TRACK_ID)) {
+ return getIntent().getExtras().getLong(TrackContentProvider.Schema.COL_TRACK_ID);
} else if (getIntent().getData().toString().startsWith(OAUTH_CALLBACK_URL)) {
- return Long.parseLong(getIntent().getData().getQueryParameter(Schema.COL_TRACK_ID));
+ return Long.parseLong(getIntent().getData().getQueryParameter(TrackContentProvider.Schema.COL_TRACK_ID));
} else {
throw new IllegalArgumentException("Missing Track ID");
}
@@ -156,7 +155,7 @@ public void uploadToOsm() {
protected void executionCompleted() {
new UploadToOpenStreetMapTask(OpenStreetMapUpload.this, trackId, oAuthConsumer, this.getTmpFile(),
this.getFilename(), etDescription.getText().toString(), etTags.getText().toString(),
- OSMVisibility.fromPosition(OpenStreetMapUpload.this.spVisibility.getSelectedItemPosition()))
+ Track.OSMVisibility.fromPosition(OpenStreetMapUpload.this.spVisibility.getSelectedItemPosition()))
.execute();
}
}.execute();
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/activity/Preferences.java b/app/src/main/java/org/osmtracker/activity/Preferences.java
similarity index 98%
rename from app/src/main/java/me/guillaumin/android/osmtracker/activity/Preferences.java
rename to app/src/main/java/org/osmtracker/activity/Preferences.java
index 76030ea3a..f9254b9ee 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/activity/Preferences.java
+++ b/app/src/main/java/org/osmtracker/activity/Preferences.java
@@ -1,10 +1,10 @@
-package me.guillaumin.android.osmtracker.activity;
+package org.osmtracker.activity;
import java.io.File;
import java.io.FilenameFilter;
-import me.guillaumin.android.osmtracker.OSMTracker;
-import me.guillaumin.android.osmtracker.R;
+import org.osmtracker.OSMTracker;
+import org.osmtracker.R;
import android.content.Intent;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/activity/TrackDetail.java b/app/src/main/java/org/osmtracker/activity/TrackDetail.java
similarity index 90%
rename from app/src/main/java/me/guillaumin/android/osmtracker/activity/TrackDetail.java
rename to app/src/main/java/org/osmtracker/activity/TrackDetail.java
index 8d593294e..604e20411 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/activity/TrackDetail.java
+++ b/app/src/main/java/org/osmtracker/activity/TrackDetail.java
@@ -1,4 +1,4 @@
-package me.guillaumin.android.osmtracker.activity;
+package org.osmtracker.activity;
import java.sql.Date;
import java.text.DateFormat;
@@ -7,13 +7,13 @@
import java.util.List;
import java.util.Map;
-import me.guillaumin.android.osmtracker.OSMTracker;
-import me.guillaumin.android.osmtracker.R;
-import me.guillaumin.android.osmtracker.db.TrackContentProvider;
-import me.guillaumin.android.osmtracker.db.TrackContentProvider.Schema;
-import me.guillaumin.android.osmtracker.db.model.Track;
-import me.guillaumin.android.osmtracker.gpx.ExportToStorageTask;
-import me.guillaumin.android.osmtracker.util.MercatorProjection;
+import org.osmtracker.OSMTracker;
+import org.osmtracker.R;
+import org.osmtracker.db.TrackContentProvider;
+import org.osmtracker.db.model.Track;
+import org.osmtracker.gpx.ExportToStorageTask;
+import org.osmtracker.util.MercatorProjection;
+
import android.content.ContentResolver;
import android.content.ContentUris;
import android.content.Intent;
@@ -38,7 +38,7 @@
/**
* Display details about one track. Allow naming the track.
- * The track ID is passed into the Bundle via {@link Schema#COL_TRACK_ID}.
+ * The track ID is passed into the Bundle via {@link TrackContentProvider.Schema#COL_TRACK_ID}.
*
* @author Jeremy D Monin
*
@@ -73,7 +73,7 @@ public class TrackDetail extends TrackDetailEditor implements AdapterView.OnItem
@Override
protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState, R.layout.trackdetail, getIntent().getExtras().getLong(Schema.COL_TRACK_ID));
+ super.onCreate(savedInstanceState, R.layout.trackdetail, getIntent().getExtras().getLong(TrackContentProvider.Schema.COL_TRACK_ID));
lv = (ListView) findViewById(R.id.trackdetail_list);
@@ -171,10 +171,10 @@ protected void onResume() {
// OSM Upload date
map = new HashMap();
map.put(ITEM_KEY, getResources().getString(R.string.trackdetail_osm_upload_date));
- if (cursor.isNull(cursor.getColumnIndex(Schema.COL_OSM_UPLOAD_DATE))) {
+ if (cursor.isNull(cursor.getColumnIndex(TrackContentProvider.Schema.COL_OSM_UPLOAD_DATE))) {
map.put(ITEM_VALUE, getResources().getString(R.string.trackdetail_osm_upload_notyet));
} else {
- map.put(ITEM_VALUE, DateFormat.getDateTimeInstance().format(new Date(cursor.getLong(cursor.getColumnIndex(Schema.COL_EXPORT_DATE)))));
+ map.put(ITEM_VALUE, DateFormat.getDateTimeInstance().format(new Date(cursor.getLong(cursor.getColumnIndex(TrackContentProvider.Schema.COL_EXPORT_DATE)))));
}
data.add(map);
@@ -182,10 +182,10 @@ protected void onResume() {
// if the user exports the track
map = new HashMap();
map.put(ITEM_KEY, getResources().getString(R.string.trackdetail_exportdate));
- if (cursor.isNull(cursor.getColumnIndex(Schema.COL_EXPORT_DATE))) {
+ if (cursor.isNull(cursor.getColumnIndex(TrackContentProvider.Schema.COL_EXPORT_DATE))) {
map.put(ITEM_VALUE, getResources().getString(R.string.trackdetail_export_notyet));
} else {
- map.put(ITEM_VALUE, (DateFormat.getDateTimeInstance().format(new Date(cursor.getLong(cursor.getColumnIndex(Schema.COL_EXPORT_DATE))))));
+ map.put(ITEM_VALUE, (DateFormat.getDateTimeInstance().format(new Date(cursor.getLong(cursor.getColumnIndex(TrackContentProvider.Schema.COL_EXPORT_DATE))))));
}
data.add(map);
@@ -226,7 +226,7 @@ public boolean onOptionsItemSelected(MenuItem item) {
} else {
i = new Intent(this, DisplayTrack.class);
}
- i.putExtra(Schema.COL_TRACK_ID, trackId);
+ i.putExtra(TrackContentProvider.Schema.COL_TRACK_ID, trackId);
startActivity(i);
break;
case R.id.trackdetail_menu_export:
@@ -240,7 +240,7 @@ public boolean onOptionsItemSelected(MenuItem item) {
break;
case R.id.trackdetail_menu_osm_upload:
i = new Intent(this, OpenStreetMapUpload.class);
- i.putExtra(Schema.COL_TRACK_ID, trackId);
+ i.putExtra(TrackContentProvider.Schema.COL_TRACK_ID, trackId);
startActivity(i);
break;
}
@@ -258,7 +258,7 @@ public void onItemClick(AdapterView> parent, View view, final int position, fi
}
Intent i = new Intent(this, WaypointList.class);
- i.putExtra(Schema.COL_TRACK_ID, trackId);
+ i.putExtra(TrackContentProvider.Schema.COL_TRACK_ID, trackId);
startActivity(i);
}
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/activity/TrackDetailEditor.java b/app/src/main/java/org/osmtracker/activity/TrackDetailEditor.java
similarity index 79%
rename from app/src/main/java/me/guillaumin/android/osmtracker/activity/TrackDetailEditor.java
rename to app/src/main/java/org/osmtracker/activity/TrackDetailEditor.java
index 3c7f1e5e3..aed273b25 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/activity/TrackDetailEditor.java
+++ b/app/src/main/java/org/osmtracker/activity/TrackDetailEditor.java
@@ -1,10 +1,9 @@
-package me.guillaumin.android.osmtracker.activity;
+package org.osmtracker.activity;
+
+import org.osmtracker.R;
+import org.osmtracker.db.TrackContentProvider;
+import org.osmtracker.db.model.Track;
-import me.guillaumin.android.osmtracker.R;
-import me.guillaumin.android.osmtracker.db.TrackContentProvider;
-import me.guillaumin.android.osmtracker.db.TrackContentProvider.Schema;
-import me.guillaumin.android.osmtracker.db.model.Track;
-import me.guillaumin.android.osmtracker.db.model.Track.OSMVisibility;
import android.app.Activity;
import android.content.ContentUris;
import android.content.ContentValues;
@@ -53,7 +52,7 @@ protected void onCreate(Bundle savedInstanceState, int viewResId, long trackId)
ArrayAdapter adapter = new ArrayAdapter(this,
android.R.layout.simple_spinner_item);
- for (OSMVisibility v: OSMVisibility.values()) {
+ for (Track.OSMVisibility v: Track.OSMVisibility.values()) {
adapter.add(getResources().getString(v.resId));
}
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
@@ -92,13 +91,13 @@ protected boolean save() {
// String class required for equals to work, and for trim().
String enteredName = etName.getText().toString().trim();
if ((enteredName.length() > 0)) {
- values.put(Schema.COL_NAME, enteredName);
+ values.put(TrackContentProvider.Schema.COL_NAME, enteredName);
}
// All other values updated even if empty
- values.put(Schema.COL_DESCRIPTION, etDescription.getText().toString().trim());
- values.put(Schema.COL_TAGS, etTags.getText().toString().trim());
- values.put(Schema.COL_OSM_VISIBILITY, OSMVisibility.fromPosition(spVisibility.getSelectedItemPosition()).toString());
+ values.put(TrackContentProvider.Schema.COL_DESCRIPTION, etDescription.getText().toString().trim());
+ values.put(TrackContentProvider.Schema.COL_TAGS, etTags.getText().toString().trim());
+ values.put(TrackContentProvider.Schema.COL_OSM_VISIBILITY, Track.OSMVisibility.fromPosition(spVisibility.getSelectedItemPosition()).toString());
getContentResolver().update(trackUri, values, null, null);
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/activity/TrackLogger.java b/app/src/main/java/org/osmtracker/activity/TrackLogger.java
similarity index 93%
rename from app/src/main/java/me/guillaumin/android/osmtracker/activity/TrackLogger.java
rename to app/src/main/java/org/osmtracker/activity/TrackLogger.java
index ac2ea2525..8c23d224d 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/activity/TrackLogger.java
+++ b/app/src/main/java/org/osmtracker/activity/TrackLogger.java
@@ -1,22 +1,23 @@
-package me.guillaumin.android.osmtracker.activity;
+package org.osmtracker.activity;
import java.io.File;
import java.util.Date;
-import me.guillaumin.android.osmtracker.OSMTracker;
-import me.guillaumin.android.osmtracker.R;
-import me.guillaumin.android.osmtracker.db.DataHelper;
-import me.guillaumin.android.osmtracker.db.TrackContentProvider.Schema;
-import me.guillaumin.android.osmtracker.layout.GpsStatusRecord;
-import me.guillaumin.android.osmtracker.layout.UserDefinedLayout;
-import me.guillaumin.android.osmtracker.listener.SensorListener;
-import me.guillaumin.android.osmtracker.receiver.MediaButtonReceiver;
-import me.guillaumin.android.osmtracker.service.gps.GPSLogger;
-import me.guillaumin.android.osmtracker.service.gps.GPSLoggerServiceConnection;
-import me.guillaumin.android.osmtracker.util.FileSystemUtils;
-import me.guillaumin.android.osmtracker.util.ThemeValidator;
-import me.guillaumin.android.osmtracker.view.TextNoteDialog;
-import me.guillaumin.android.osmtracker.view.VoiceRecDialog;
+import org.osmtracker.OSMTracker;
+import org.osmtracker.R;
+import org.osmtracker.db.DataHelper;
+import org.osmtracker.layout.GpsStatusRecord;
+import org.osmtracker.layout.UserDefinedLayout;
+import org.osmtracker.listener.SensorListener;
+import org.osmtracker.receiver.MediaButtonReceiver;
+import org.osmtracker.service.gps.GPSLogger;
+import org.osmtracker.service.gps.GPSLoggerServiceConnection;
+import org.osmtracker.util.FileSystemUtils;
+import org.osmtracker.util.ThemeValidator;
+import org.osmtracker.view.TextNoteDialog;
+import org.osmtracker.view.VoiceRecDialog;
+import org.osmtracker.db.TrackContentProvider;
+
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
@@ -149,11 +150,11 @@ public class TrackLogger extends Activity {
protected void onCreate(Bundle savedInstanceState) {
// Get the track id to work with
- currentTrackId = getIntent().getExtras().getLong(Schema.COL_TRACK_ID);
+ currentTrackId = getIntent().getExtras().getLong(TrackContentProvider.Schema.COL_TRACK_ID);
Log.v(TAG, "Starting for track id " + currentTrackId);
gpsLoggerServiceIntent = new Intent(this, GPSLogger.class);
- gpsLoggerServiceIntent.putExtra(Schema.COL_TRACK_ID, currentTrackId);
+ gpsLoggerServiceIntent.putExtra(TrackContentProvider.Schema.COL_TRACK_ID, currentTrackId);
// Populate default preference values
PreferenceManager.setDefaultValues(this, R.xml.preferences, false);
@@ -380,7 +381,7 @@ public boolean onOptionsItemSelected(MenuItem item) {
case R.id.tracklogger_menu_waypointlist:
// Start Waypoint list activity
i = new Intent(this, WaypointList.class);
- i.putExtra(Schema.COL_TRACK_ID, currentTrackId);
+ i.putExtra(TrackContentProvider.Schema.COL_TRACK_ID, currentTrackId);
startActivity(i);
break;
case R.id.tracklogger_menu_about:
@@ -396,7 +397,7 @@ public boolean onOptionsItemSelected(MenuItem item) {
} else {
i = new Intent(this, DisplayTrack.class);
}
- i.putExtra(Schema.COL_TRACK_ID, currentTrackId);
+ i.putExtra(TrackContentProvider.Schema.COL_TRACK_ID, currentTrackId);
startActivity(i);
break;
}
@@ -496,7 +497,7 @@ protected void onActivityResult(int requestCode, int resultCode, Intent data) {
File imageFile = popImageFile();
if (imageFile != null) {
Intent intent = new Intent(OSMTracker.INTENT_TRACK_WP);
- intent.putExtra(Schema.COL_TRACK_ID, currentTrackId);
+ intent.putExtra(TrackContentProvider.Schema.COL_TRACK_ID, currentTrackId);
intent.putExtra(OSMTracker.INTENT_KEY_NAME, getResources().getString(R.string.wpt_stillimage));
intent.putExtra(OSMTracker.INTENT_KEY_LINK, imageFile.getName());
sendBroadcast(intent);
@@ -518,7 +519,7 @@ protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// Send an intent to inform service to track the waypoint.
Intent intent = new Intent(OSMTracker.INTENT_TRACK_WP);
- intent.putExtra(Schema.COL_TRACK_ID, currentTrackId);
+ intent.putExtra(TrackContentProvider.Schema.COL_TRACK_ID, currentTrackId);
intent.putExtra(OSMTracker.INTENT_KEY_NAME, getResources().getString(R.string.wpt_stillimage));
intent.putExtra(OSMTracker.INTENT_KEY_LINK, imageFile.getName());
sendBroadcast(intent);
@@ -617,8 +618,8 @@ protected void onPrepareDialog(int id, Dialog dialog) {
@Override
protected void onNewIntent(Intent newIntent) {
if (newIntent.getExtras() != null) {
- if (newIntent.getExtras().containsKey(Schema.COL_TRACK_ID)) {
- currentTrackId = newIntent.getExtras().getLong(Schema.COL_TRACK_ID);
+ if (newIntent.getExtras().containsKey(TrackContentProvider.Schema.COL_TRACK_ID)) {
+ currentTrackId = newIntent.getExtras().getLong(TrackContentProvider.Schema.COL_TRACK_ID);
setIntent(newIntent);
}
if (newIntent.hasExtra("mediaButton") && gpsLogger != null && gpsLogger.isTracking()) {
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/activity/TrackManager.java b/app/src/main/java/org/osmtracker/activity/TrackManager.java
similarity index 86%
rename from app/src/main/java/me/guillaumin/android/osmtracker/activity/TrackManager.java
rename to app/src/main/java/org/osmtracker/activity/TrackManager.java
index d4754fcb7..a0f13de75 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/activity/TrackManager.java
+++ b/app/src/main/java/org/osmtracker/activity/TrackManager.java
@@ -1,17 +1,17 @@
-package me.guillaumin.android.osmtracker.activity;
+package org.osmtracker.activity;
import java.io.File;
import java.util.Date;
-import me.guillaumin.android.osmtracker.OSMTracker;
-import me.guillaumin.android.osmtracker.R;
-import me.guillaumin.android.osmtracker.db.DataHelper;
-import me.guillaumin.android.osmtracker.db.TrackContentProvider;
-import me.guillaumin.android.osmtracker.db.TrackContentProvider.Schema;
-import me.guillaumin.android.osmtracker.db.TracklistAdapter;
-import me.guillaumin.android.osmtracker.exception.CreateTrackException;
-import me.guillaumin.android.osmtracker.gpx.ExportToStorageTask;
-import me.guillaumin.android.osmtracker.util.FileSystemUtils;
+import org.osmtracker.OSMTracker;
+import org.osmtracker.R;
+import org.osmtracker.db.DataHelper;
+import org.osmtracker.db.TrackContentProvider;
+import org.osmtracker.db.TracklistAdapter;
+import org.osmtracker.exception.CreateTrackException;
+import org.osmtracker.gpx.ExportToStorageTask;
+import org.osmtracker.util.FileSystemUtils;
+
import android.app.AlertDialog;
import android.app.ListActivity;
import android.content.ContentUris;
@@ -73,7 +73,7 @@ protected void onCreate(Bundle savedInstanceState) {
protected void onResume() {
Cursor cursor = getContentResolver().query(
TrackContentProvider.CONTENT_URI_TRACK, null, null, null,
- Schema.COL_START_DATE + " desc");
+ TrackContentProvider.Schema.COL_START_DATE + " desc");
startManagingCursor(cursor);
setListAdapter(new TracklistAdapter(TrackManager.this, cursor));
getListView().setEmptyView(findViewById(R.id.trackmgr_empty)); // undo change from onPause
@@ -90,7 +90,7 @@ protected void onResume() {
// we will use the flag selectionSet to handle the while loop
boolean selectionSet = false;
while(!selectionSet && cursor.moveToNext()){
- if(cursor.getInt(cursor.getColumnIndex(Schema.COL_ACTIVE)) == 1){
+ if(cursor.getInt(cursor.getColumnIndex(TrackContentProvider.Schema.COL_ACTIVE)) == 1){
// This is the active track
// set selection to the current cursor position
getListView().setSelection(cursor.getPosition());
@@ -182,7 +182,7 @@ public boolean onOptionsItemSelected(MenuItem item) {
Intent i = new Intent(this, TrackLogger.class);
// New track
currentTrackId = createNewTrack();
- i.putExtra(Schema.COL_TRACK_ID, currentTrackId);
+ i.putExtra(TrackContentProvider.Schema.COL_TRACK_ID, currentTrackId);
startActivity(i);
} catch (CreateTrackException cte) {
Toast.makeText(this,
@@ -194,7 +194,7 @@ public boolean onOptionsItemSelected(MenuItem item) {
case R.id.trackmgr_menu_continuetrack:
Intent i = new Intent(this, TrackLogger.class);
i.putExtra(TrackLogger.STATE_IS_TRACKING, true);
- i.putExtra(Schema.COL_TRACK_ID, currentTrackId);
+ i.putExtra(TrackContentProvider.Schema.COL_TRACK_ID, currentTrackId);
startActivity(i);
break;
case R.id.trackmgr_menu_stopcurrenttrack:
@@ -233,10 +233,10 @@ public void onClick(DialogInterface dialog, int which) {
@Override
public void onClick(DialogInterface dialog, int which) {
Cursor cursor = getContentResolver().query(TrackContentProvider.CONTENT_URI_TRACK,
- null, null, null, Schema.COL_START_DATE + " desc");
+ null, null, null, TrackContentProvider.Schema.COL_START_DATE + " desc");
if (cursor.moveToFirst()) {
long[] ids = new long[cursor.getCount()];
- int idCol = cursor.getColumnIndex(Schema.COL_ID);
+ int idCol = cursor.getColumnIndex(TrackContentProvider.Schema.COL_ID);
int i=0;
do {
ids[i++] = cursor.getLong(idCol);
@@ -302,7 +302,7 @@ public boolean onContextItemSelected(MenuItem item) {
// let's activate the track and start the TrackLogger activity
setActiveTrack(info.id);
i = new Intent(this, TrackLogger.class);
- i.putExtra(Schema.COL_TRACK_ID, info.id);
+ i.putExtra(TrackContentProvider.Schema.COL_TRACK_ID, info.id);
startActivity(i);
break;
case R.id.trackmgr_contextmenu_delete:
@@ -333,7 +333,7 @@ public void onClick(DialogInterface dialog, int which) {
break;
case R.id.trackmgr_contextmenu_osm_upload:
i = new Intent(this, OpenStreetMapUpload.class);
- i.putExtra(Schema.COL_TRACK_ID, info.id);
+ i.putExtra(TrackContentProvider.Schema.COL_TRACK_ID, info.id);
startActivity(i);
break;
case R.id.trackmgr_contextmenu_display:
@@ -345,12 +345,12 @@ public void onClick(DialogInterface dialog, int which) {
} else {
i = new Intent(this, DisplayTrack.class);
}
- i.putExtra(Schema.COL_TRACK_ID, info.id);
+ i.putExtra(TrackContentProvider.Schema.COL_TRACK_ID, info.id);
startActivity(i);
break;
case R.id.trackmgr_contextmenu_details:
i = new Intent(this, TrackDetail.class);
- i.putExtra(Schema.COL_TRACK_ID, info.id);
+ i.putExtra(TrackContentProvider.Schema.COL_TRACK_ID, info.id);
startActivity(i);
break;
}
@@ -370,12 +370,12 @@ protected void onListItemClick(ListView lv, View iv, final int position, final l
if (id == currentTrackId) {
// continue recording the current track
i = new Intent(this, TrackLogger.class);
- i.putExtra(Schema.COL_TRACK_ID, currentTrackId);
+ i.putExtra(TrackContentProvider.Schema.COL_TRACK_ID, currentTrackId);
i.putExtra(TrackLogger.STATE_IS_TRACKING, true);
} else {
// show track info
i = new Intent(this, TrackDetail.class);
- i.putExtra(Schema.COL_TRACK_ID, id);
+ i.putExtra(TrackContentProvider.Schema.COL_TRACK_ID, id);
}
startActivity(i);
}
@@ -390,9 +390,9 @@ private long createNewTrack() throws CreateTrackException {
// Create entry in TRACK table
ContentValues values = new ContentValues();
- values.put(Schema.COL_NAME, "");
- values.put(Schema.COL_START_DATE, startDate.getTime());
- values.put(Schema.COL_ACTIVE, Schema.VAL_TRACK_ACTIVE);
+ values.put(TrackContentProvider.Schema.COL_NAME, "");
+ values.put(TrackContentProvider.Schema.COL_START_DATE, startDate.getTime());
+ values.put(TrackContentProvider.Schema.COL_ACTIVE, TrackContentProvider.Schema.VAL_TRACK_ACTIVE);
Uri trackUri = getContentResolver().insert(TrackContentProvider.CONTENT_URI_TRACK, values);
long trackId = ContentUris.parseId(trackUri);
@@ -423,7 +423,7 @@ private void deleteTrack(long id) {
* Deletes all tracks and their data
*/
private void deleteAllTracks() {
- Cursor cursor = getContentResolver().query(TrackContentProvider.CONTENT_URI_TRACK, null, null, null, Schema.COL_START_DATE + " asc");
+ Cursor cursor = getContentResolver().query(TrackContentProvider.CONTENT_URI_TRACK, null, null, null, TrackContentProvider.Schema.COL_START_DATE + " asc");
// Stop any currently active tracks
if (currentTrackId != -1) {
@@ -431,7 +431,7 @@ private void deleteAllTracks() {
}
if (cursor.moveToFirst()) {
- int id_col = cursor.getColumnIndex(Schema.COL_ID);
+ int id_col = cursor.getColumnIndex(TrackContentProvider.Schema.COL_ID);
do {
deleteTrack(cursor.getLong(id_col));
} while (cursor.moveToNext());
@@ -451,8 +451,8 @@ private void setActiveTrack(long trackId){
// set the track active
ContentValues values = new ContentValues();
- values.put(Schema.COL_ACTIVE, Schema.VAL_TRACK_ACTIVE);
- getContentResolver().update(TrackContentProvider.CONTENT_URI_TRACK, values, Schema.COL_ID + " = ?", new String[] {Long.toString(trackId)});
+ values.put(TrackContentProvider.Schema.COL_ACTIVE, TrackContentProvider.Schema.VAL_TRACK_ACTIVE);
+ getContentResolver().update(TrackContentProvider.CONTENT_URI_TRACK, values, TrackContentProvider.Schema.COL_ID + " = ?", new String[] {Long.toString(trackId)});
}
/**
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/activity/WaypointList.java b/app/src/main/java/org/osmtracker/activity/WaypointList.java
similarity index 68%
rename from app/src/main/java/me/guillaumin/android/osmtracker/activity/WaypointList.java
rename to app/src/main/java/org/osmtracker/activity/WaypointList.java
index 7d7cda9ed..d78960f7b 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/activity/WaypointList.java
+++ b/app/src/main/java/org/osmtracker/activity/WaypointList.java
@@ -1,8 +1,8 @@
-package me.guillaumin.android.osmtracker.activity;
+package org.osmtracker.activity;
+
+import org.osmtracker.db.TrackContentProvider;
+import org.osmtracker.db.WaypointListAdapter;
-import me.guillaumin.android.osmtracker.db.TrackContentProvider;
-import me.guillaumin.android.osmtracker.db.TrackContentProvider.Schema;
-import me.guillaumin.android.osmtracker.db.WaypointListAdapter;
import android.app.ListActivity;
import android.database.Cursor;
import android.widget.CursorAdapter;
@@ -17,10 +17,10 @@ public class WaypointList extends ListActivity {
@Override
protected void onResume() {
- Long trackId = getIntent().getExtras().getLong(Schema.COL_TRACK_ID);
+ Long trackId = getIntent().getExtras().getLong(TrackContentProvider.Schema.COL_TRACK_ID);
Cursor cursor = getContentResolver().query(TrackContentProvider.waypointsUri(trackId),
- null, null, null, Schema.COL_TIMESTAMP + " desc");
+ null, null, null, TrackContentProvider.Schema.COL_TIMESTAMP + " desc");
startManagingCursor(cursor);
setListAdapter(new WaypointListAdapter(WaypointList.this, cursor));
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/db/DataHelper.java b/app/src/main/java/org/osmtracker/db/DataHelper.java
similarity index 77%
rename from app/src/main/java/me/guillaumin/android/osmtracker/db/DataHelper.java
rename to app/src/main/java/org/osmtracker/db/DataHelper.java
index 2ba2190df..83a660a31 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/db/DataHelper.java
+++ b/app/src/main/java/org/osmtracker/db/DataHelper.java
@@ -1,10 +1,10 @@
-package me.guillaumin.android.osmtracker.db;
+package org.osmtracker.db;
import java.io.File;
import java.text.SimpleDateFormat;
-import me.guillaumin.android.osmtracker.OSMTracker;
-import me.guillaumin.android.osmtracker.db.TrackContentProvider.Schema;
+import org.osmtracker.OSMTracker;
+
import android.content.ContentResolver;
import android.content.ContentUris;
import android.content.ContentValues;
@@ -97,35 +97,35 @@ public DataHelper(Context c) {
public void track(long trackId, Location location, float azimuth, int accuracy) {
Log.v(TAG, "Tracking (trackId=" + trackId + ") location: " + location + " azimuth: " + azimuth + ", accuracy: " + accuracy);
ContentValues values = new ContentValues();
- values.put(Schema.COL_TRACK_ID, trackId);
- values.put(Schema.COL_LATITUDE, location.getLatitude());
- values.put(Schema.COL_LONGITUDE, location.getLongitude());
+ values.put(TrackContentProvider.Schema.COL_TRACK_ID, trackId);
+ values.put(TrackContentProvider.Schema.COL_LATITUDE, location.getLatitude());
+ values.put(TrackContentProvider.Schema.COL_LONGITUDE, location.getLongitude());
if (location.hasAltitude()) {
- values.put(Schema.COL_ELEVATION, location.getAltitude());
+ values.put(TrackContentProvider.Schema.COL_ELEVATION, location.getAltitude());
}
if (location.hasAccuracy()) {
- values.put(Schema.COL_ACCURACY, location.getAccuracy());
+ values.put(TrackContentProvider.Schema.COL_ACCURACY, location.getAccuracy());
}
if (location.hasSpeed()) {
- values.put(Schema.COL_SPEED, location.getSpeed());
+ values.put(TrackContentProvider.Schema.COL_SPEED, location.getSpeed());
}
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
if (prefs.getBoolean(OSMTracker.Preferences.KEY_GPS_IGNORE_CLOCK, OSMTracker.Preferences.VAL_GPS_IGNORE_CLOCK)) {
// Use OS clock
- values.put(Schema.COL_TIMESTAMP, System.currentTimeMillis());
+ values.put(TrackContentProvider.Schema.COL_TIMESTAMP, System.currentTimeMillis());
} else {
// Use GPS clock
- values.put(Schema.COL_TIMESTAMP, location.getTime());
+ values.put(TrackContentProvider.Schema.COL_TIMESTAMP, location.getTime());
}
if (azimuth >= AZIMUTH_MIN && azimuth < AZIMUTH_MAX) {
- values.put(Schema.COL_COMPASS, azimuth);
- values.put(Schema.COL_COMPASS_ACCURACY, accuracy);
+ values.put(TrackContentProvider.Schema.COL_COMPASS, azimuth);
+ values.put(TrackContentProvider.Schema.COL_COMPASS_ACCURACY, accuracy);
}
Uri trackUri = ContentUris.withAppendedId(TrackContentProvider.CONTENT_URI_TRACK, trackId);
- contentResolver.insert(Uri.withAppendedPath(trackUri, Schema.TBL_TRACKPOINT + "s"), values);
+ contentResolver.insert(Uri.withAppendedPath(trackUri, TrackContentProvider.Schema.TBL_TRACKPOINT + "s"), values);
}
/**
@@ -156,44 +156,44 @@ public void wayPoint(long trackId, Location location, int nbSatellites, String n
// TODO investigate this issue.
if (location != null) {
ContentValues values = new ContentValues();
- values.put(Schema.COL_TRACK_ID, trackId);
- values.put(Schema.COL_LATITUDE, location.getLatitude());
- values.put(Schema.COL_LONGITUDE, location.getLongitude());
- values.put(Schema.COL_NAME, name);
- values.put(Schema.COL_NBSATELLITES, nbSatellites);
+ values.put(TrackContentProvider.Schema.COL_TRACK_ID, trackId);
+ values.put(TrackContentProvider.Schema.COL_LATITUDE, location.getLatitude());
+ values.put(TrackContentProvider.Schema.COL_LONGITUDE, location.getLongitude());
+ values.put(TrackContentProvider.Schema.COL_NAME, name);
+ values.put(TrackContentProvider.Schema.COL_NBSATELLITES, nbSatellites);
if (uuid != null) {
- values.put(Schema.COL_UUID, uuid);
+ values.put(TrackContentProvider.Schema.COL_UUID, uuid);
}
if (location.hasAltitude()) {
- values.put(Schema.COL_ELEVATION, location.getAltitude());
+ values.put(TrackContentProvider.Schema.COL_ELEVATION, location.getAltitude());
}
if (location.hasAccuracy()) {
- values.put(Schema.COL_ACCURACY, location.getAccuracy());
+ values.put(TrackContentProvider.Schema.COL_ACCURACY, location.getAccuracy());
}
if (link != null) {
// Rename file to match location timestamp
- values.put(Schema.COL_LINK, renameFile(trackId, link, FILENAME_FORMATTER.format(location.getTime())));
+ values.put(TrackContentProvider.Schema.COL_LINK, renameFile(trackId, link, FILENAME_FORMATTER.format(location.getTime())));
}
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
if (prefs.getBoolean(OSMTracker.Preferences.KEY_GPS_IGNORE_CLOCK, OSMTracker.Preferences.VAL_GPS_IGNORE_CLOCK)) {
// Use OS clock
- values.put(Schema.COL_TIMESTAMP, System.currentTimeMillis());
+ values.put(TrackContentProvider.Schema.COL_TIMESTAMP, System.currentTimeMillis());
} else {
// Use GPS clock
- values.put(Schema.COL_TIMESTAMP, location.getTime());
+ values.put(TrackContentProvider.Schema.COL_TIMESTAMP, location.getTime());
}
//add compass if valid
if (azimuth >= AZIMUTH_MIN && azimuth < AZIMUTH_MAX) {
- values.put(Schema.COL_COMPASS, azimuth);
- values.put(Schema.COL_COMPASS_ACCURACY, accuracy);
+ values.put(TrackContentProvider.Schema.COL_COMPASS, azimuth);
+ values.put(TrackContentProvider.Schema.COL_COMPASS_ACCURACY, accuracy);
}
Uri trackUri = ContentUris.withAppendedId(TrackContentProvider.CONTENT_URI_TRACK, trackId);
- contentResolver.insert(Uri.withAppendedPath(trackUri, Schema.TBL_WAYPOINT + "s"), values);
+ contentResolver.insert(Uri.withAppendedPath(trackUri, TrackContentProvider.Schema.TBL_WAYPOINT + "s"), values);
}
}
@@ -214,14 +214,14 @@ public void updateWayPoint(long trackId, String uuid, String name, String link)
if (uuid != null) {
ContentValues values = new ContentValues();
if (name != null) {
- values.put(Schema.COL_NAME, name);
+ values.put(TrackContentProvider.Schema.COL_NAME, name);
}
if (link != null) {
- values.put(Schema.COL_LINK, link);
+ values.put(TrackContentProvider.Schema.COL_LINK, link);
}
Uri trackUri = ContentUris.withAppendedId(TrackContentProvider.CONTENT_URI_TRACK, trackId);
- contentResolver.update(Uri.withAppendedPath(trackUri, Schema.TBL_WAYPOINT + "s"), values,
+ contentResolver.update(Uri.withAppendedPath(trackUri, TrackContentProvider.Schema.TBL_WAYPOINT + "s"), values,
"uuid = ?", new String[] { uuid });
}
}
@@ -247,7 +247,7 @@ public void deleteWayPoint(String uuid) {
public void stopTracking(long trackId) {
Uri trackUri = ContentUris.withAppendedId(TrackContentProvider.CONTENT_URI_TRACK, trackId);
ContentValues values = new ContentValues();
- values.put(Schema.COL_ACTIVE, Schema.VAL_TRACK_INACTIVE);
+ values.put(TrackContentProvider.Schema.COL_ACTIVE, TrackContentProvider.Schema.VAL_TRACK_INACTIVE);
contentResolver.update(trackUri, values, null, null);
}
@@ -260,7 +260,7 @@ public static long getActiveTrackId(ContentResolver cr) {
long currentTrackId = -1;
Cursor ca = cr.query(TrackContentProvider.CONTENT_URI_TRACK_ACTIVE, null, null, null, null);
if (ca.moveToFirst()) {
- currentTrackId = ca.getLong(ca.getColumnIndex(Schema.COL_ID));
+ currentTrackId = ca.getLong(ca.getColumnIndex(TrackContentProvider.Schema.COL_ID));
}
ca.close();
return currentTrackId;
@@ -275,7 +275,7 @@ public static long getActiveTrackId(ContentResolver cr) {
public static void setTrackName(long trackId, String name, ContentResolver cr) {
Uri trackUri = ContentUris.withAppendedId(TrackContentProvider.CONTENT_URI_TRACK, trackId);
ContentValues values = new ContentValues();
- values.put(Schema.COL_NAME, name);
+ values.put(TrackContentProvider.Schema.COL_NAME, name);
cr.update(trackUri, values, null, null);
}
@@ -288,14 +288,14 @@ public static void setTrackName(long trackId, String name, ContentResolver cr) {
public static void setTrackExportDate(long trackId, long exportTime, ContentResolver cr) {
Uri trackUri = ContentUris.withAppendedId(TrackContentProvider.CONTENT_URI_TRACK, trackId);
ContentValues values = new ContentValues();
- values.put(Schema.COL_EXPORT_DATE, exportTime);
+ values.put(TrackContentProvider.Schema.COL_EXPORT_DATE, exportTime);
cr.update(trackUri, values, null, null);
}
public static void setTrackUploadDate(long trackId, long uploadTime, ContentResolver cr) {
Uri trackUri = ContentUris.withAppendedId(TrackContentProvider.CONTENT_URI_TRACK, trackId);
ContentValues values = new ContentValues();
- values.put(Schema.COL_OSM_UPLOAD_DATE, uploadTime);
+ values.put(TrackContentProvider.Schema.COL_OSM_UPLOAD_DATE, uploadTime);
cr.update(trackUri, values, null, null);
}
@@ -347,7 +347,7 @@ public static File getTrackDirFromDB(ContentResolver cr, long trackId) {
if (c != null && c.getCount() != 0) {
c.moveToFirst();
@SuppressWarnings("deprecation")
- String trackPath = c.getString(c.getColumnIndex(Schema.COL_DIR));
+ String trackPath = c.getString(c.getColumnIndex(TrackContentProvider.Schema.COL_DIR));
if (trackPath != null) {
trackDir = new File(trackPath);
}
diff --git a/app/src/main/java/org/osmtracker/db/DatabaseHelper.java b/app/src/main/java/org/osmtracker/db/DatabaseHelper.java
new file mode 100644
index 000000000..6f766dc36
--- /dev/null
+++ b/app/src/main/java/org/osmtracker/db/DatabaseHelper.java
@@ -0,0 +1,245 @@
+package org.osmtracker.db;
+
+import java.io.File;
+import java.io.FilenameFilter;
+
+import org.osmtracker.OSMTracker;
+import org.osmtracker.util.FileSystemUtils;
+import android.content.ContentValues;
+import android.content.Context;
+import android.database.Cursor;
+import android.database.sqlite.SQLiteDatabase;
+import android.database.sqlite.SQLiteOpenHelper;
+import android.util.Log;
+
+import org.osmtracker.db.model.Track;
+
+/**
+ * Helper for managing database.
+ *
+ * @author Nicolas Guillaumin
+ *
+ */
+public class DatabaseHelper extends SQLiteOpenHelper {
+
+ private static final String TAG = DatabaseHelper.class.getSimpleName();
+
+ /**
+ * SQL for creating table TRACKPOINT
+ */
+ private static final String SQL_CREATE_TABLE_TRACKPOINT = ""
+ + "create table " + TrackContentProvider.Schema.TBL_TRACKPOINT + " ("
+ + TrackContentProvider.Schema.COL_ID + " integer primary key autoincrement,"
+ + TrackContentProvider.Schema.COL_TRACK_ID + " integer not null,"
+ + TrackContentProvider.Schema.COL_LATITUDE + " double not null,"
+ + TrackContentProvider.Schema.COL_LONGITUDE + " double not null,"
+ + TrackContentProvider.Schema.COL_SPEED + " double null,"
+ + TrackContentProvider.Schema.COL_ELEVATION + " double null,"
+ + TrackContentProvider.Schema.COL_ACCURACY + " double null,"
+ + TrackContentProvider.Schema.COL_TIMESTAMP + " long not null,"
+ + TrackContentProvider.Schema.COL_COMPASS + " double null,"
+ + TrackContentProvider.Schema.COL_COMPASS_ACCURACY + " integer null"+ ")";
+
+ /**
+ * SQL for creating index TRACKPOINT_idx (track id)
+ * @since 12
+ */
+ private static final String SQL_CREATE_IDX_TRACKPOINT_TRACK
+ = "create index if not exists "
+ + TrackContentProvider.Schema.TBL_TRACKPOINT
+ + "_idx ON " + TrackContentProvider.Schema.TBL_TRACKPOINT + "(" + TrackContentProvider.Schema.COL_TRACK_ID + ")";
+
+ /**
+ * SQL for creating table WAYPOINT
+ */
+ private static final String SQL_CREATE_TABLE_WAYPOINT = ""
+ + "create table " + TrackContentProvider.Schema.TBL_WAYPOINT + " ("
+ + TrackContentProvider.Schema.COL_ID + " integer primary key autoincrement,"
+ + TrackContentProvider.Schema.COL_TRACK_ID + " integer not null,"
+ + TrackContentProvider.Schema.COL_UUID + " text,"
+ + TrackContentProvider.Schema.COL_LATITUDE + " double not null,"
+ + TrackContentProvider.Schema.COL_LONGITUDE + " double not null,"
+ + TrackContentProvider.Schema.COL_ELEVATION + " double null,"
+ + TrackContentProvider.Schema.COL_ACCURACY + " double null,"
+ + TrackContentProvider.Schema.COL_TIMESTAMP + " long not null,"
+ + TrackContentProvider.Schema.COL_NAME + " text,"
+ + TrackContentProvider.Schema.COL_LINK + " text,"
+ + TrackContentProvider.Schema.COL_NBSATELLITES + " integer not null,"
+ + TrackContentProvider.Schema.COL_COMPASS + " double null,"
+ + TrackContentProvider.Schema.COL_COMPASS_ACCURACY + " integer null"+ ")";
+
+ /**
+ * SQL for creating index WAYPOINT_idx (track id)
+ * @since 12
+ */
+ private static final String SQL_CREATE_IDX_WAYPOINT_TRACK
+ = "create index if not exists "
+ + TrackContentProvider.Schema.TBL_WAYPOINT
+ + "_idx ON " + TrackContentProvider.Schema.TBL_WAYPOINT + "(" + TrackContentProvider.Schema.COL_TRACK_ID + ")";
+
+ /**
+ * SQL for creating table TRACK
+ * @since 5
+ */
+ @SuppressWarnings("deprecation")
+ private static final String SQL_CREATE_TABLE_TRACK = ""
+ + "create table " + TrackContentProvider.Schema.TBL_TRACK + " ("
+ + TrackContentProvider.Schema.COL_ID + " integer primary key autoincrement,"
+ + TrackContentProvider.Schema.COL_NAME + " text,"
+ + TrackContentProvider.Schema.COL_DESCRIPTION + " text,"
+ + TrackContentProvider.Schema.COL_TAGS + " text,"
+ + TrackContentProvider.Schema.COL_OSM_VISIBILITY + " text default '"+ Track.OSMVisibility.Private+"',"
+ + TrackContentProvider.Schema.COL_START_DATE + " long not null,"
+ + TrackContentProvider.Schema.COL_DIR + " text," // unused since DB_VERSION 13, since SQLite doesn't support to remove a column it will stay for now
+ + TrackContentProvider.Schema.COL_ACTIVE + " integer not null default 0,"
+ + TrackContentProvider.Schema.COL_EXPORT_DATE + " long," // null indicates not yet exported
+ + TrackContentProvider.Schema.COL_OSM_UPLOAD_DATE + " long" // null indicates not yet uploaded
+ + ")";
+
+ /**
+ * Database name.
+ */
+ public static final String DB_NAME = OSMTracker.class.getSimpleName();
+
+ /**
+ * Database version.
+ * If you change the version, be sure that {@link #onUpgrade(SQLiteDatabase, int, int)} can handle it.
+ * Only required for versions after v0.5.0 as before the DB was fully erased and recreated from scratch
+ * for each new track.
+ *
+ * v1: (r117) v0.4.0, v0.4.1
+ * v2: add TBL_CONFIG; that table's been dropped since then (r163) v0.4.2
+ * v3: add TBL_WAYPOINT.COL_UUID (r187) v0.4.3
+ * v5: add TBL_TRACK; TRACKPOINT, WAYPOINT +COL_TRACK_ID (r198)
+ * v7: add TBL_TRACK.COL_DIR; drop TBL_CONFIG (r201)
+ * v9: add TBL_TRACK.COL_ACTIVE (r206)
+ * v12: add TBL_TRACK.COL_EXPORT_DATE, IDX_TRACKPOINT_TRACK, IDX_WAYPOINT_TRACK (r207) v0.5.0
+ * v13: TBL_TRACK.COL_DIR is now deprecated (rxxx) v0.5.3 TODO: fill in correct revision and version
+ * v14: add TBL_TRACK.COL_OSM_UPLOAD_DATE, TBL_TRACK.COL_DESCRIPTION,
+ * TBL_TRACK.COL_TAGS and TBL_TRACK.COL_OSM_VISIBILITY for OSM upload - v0.6.0
+ * v15: add TBL_TRACKPOINT.COL_SPEED
+ * v16: add TBL_TRACKPOINT.COL_COMPASS, TBL_TRACKPOINT.COL_COMPASS_ACCURACY,
+ * TBL_WAYPOINT.COL_COMPASS and TBL_WAYPOINT.COL_COMPASS_ACCURACY
+ *
+ */
+ private static final int DB_VERSION = 16;
+
+ public DatabaseHelper(Context context) {
+ super(context, DB_NAME, null, DB_VERSION);
+ }
+
+ @Override
+ public void onCreate(SQLiteDatabase db) {
+ db.execSQL("drop table if exists " + TrackContentProvider.Schema.TBL_TRACKPOINT);
+ db.execSQL(SQL_CREATE_TABLE_TRACKPOINT);
+ db.execSQL(SQL_CREATE_IDX_TRACKPOINT_TRACK);
+ db.execSQL("drop table if exists " + TrackContentProvider.Schema.TBL_WAYPOINT);
+ db.execSQL(SQL_CREATE_TABLE_WAYPOINT);
+ db.execSQL(SQL_CREATE_IDX_WAYPOINT_TRACK);
+ db.execSQL("drop table if exists " + TrackContentProvider.Schema.TBL_TRACK);
+ db.execSQL(SQL_CREATE_TABLE_TRACK);
+ }
+
+ @Override
+ public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
+ switch(oldVersion){
+ case 1:
+ case 2:
+ case 3:
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ case 8:
+ case 9:
+ case 10:
+ case 11: //pre v0.5.0 (completely create a new database)
+ onCreate(db);
+ break;
+ case 12:
+ manageNewStoragePath(db);
+ case 13:
+ // Create 'osm_upload_date', 'description', 'tags' and 'visibility'
+ db.execSQL("alter table " + TrackContentProvider.Schema.TBL_TRACK + " add column " + TrackContentProvider.Schema.COL_OSM_UPLOAD_DATE+ " long");
+ db.execSQL("alter table " + TrackContentProvider.Schema.TBL_TRACK + " add column " + TrackContentProvider.Schema.COL_DESCRIPTION + " text");
+ db.execSQL("alter table " + TrackContentProvider.Schema.TBL_TRACK + " add column " + TrackContentProvider.Schema.COL_TAGS + " text");
+ db.execSQL("alter table " + TrackContentProvider.Schema.TBL_TRACK + " add column " + TrackContentProvider.Schema.COL_OSM_VISIBILITY
+ + " text default '"+ Track.OSMVisibility.Private+"'");
+ case 14:
+ db.execSQL("alter table " + TrackContentProvider.Schema.TBL_TRACKPOINT + " add column " + TrackContentProvider.Schema.COL_SPEED + " double null");
+ case 15:
+ db.execSQL("alter table " + TrackContentProvider.Schema.TBL_TRACKPOINT + " add column " + TrackContentProvider.Schema.COL_COMPASS + " double null");
+ db.execSQL("alter table " + TrackContentProvider.Schema.TBL_TRACKPOINT + " add column " + TrackContentProvider.Schema.COL_COMPASS_ACCURACY + " integer null");
+ db.execSQL("alter table " + TrackContentProvider.Schema.TBL_WAYPOINT + " add column " + TrackContentProvider.Schema.COL_COMPASS + " double null");
+ db.execSQL("alter table " + TrackContentProvider.Schema.TBL_WAYPOINT + " add column " + TrackContentProvider.Schema.COL_COMPASS_ACCURACY + " integer null");
+ }
+
+ }
+
+ /**
+ * copies files from the tracks to our new storage directory and removes the path reference in COL_DIR
+ * @param db the database to work on
+ */
+ @SuppressWarnings("deprecation")
+ private void manageNewStoragePath(SQLiteDatabase db){
+ Log.d(TAG,"manageNewStoragePath");
+
+ // we'll need this FilenameFitler to clean up our track directory
+ FilenameFilter gpxFilenameFilter = new FilenameFilter() {
+ @Override
+ public boolean accept(File dir, String filename) {
+ if(filename.toLowerCase().endsWith(".gpx"))
+ return true;
+ return false;
+ }
+ };
+
+ // query all tracks
+ String[] columns = new String[]{TrackContentProvider.Schema.COL_ID, TrackContentProvider.Schema.COL_DIR};
+ Cursor cursor = db.query(TrackContentProvider.Schema.TBL_TRACK, columns, null, null, null, null, null);
+
+ // if we have a valid cursor and can write to the sdcard, we'll go on and try to copy the files
+ if(cursor != null && cursor.moveToFirst()){
+ Log.d(TAG, "manageNewStoragePath (found " + cursor.getCount() + " tracks to be processed)");
+ do{
+ long trackId = cursor.getLong(cursor.getColumnIndex(TrackContentProvider.Schema.COL_ID));
+ Log.d(TAG,"manageNewStoragePath (" + trackId + ")");
+ String oldDirName = cursor.getString(cursor.getColumnIndex(TrackContentProvider.Schema.COL_DIR));
+ File newDir = DataHelper.getTrackDirectory(trackId);
+ File oldDir = new File(oldDirName);
+ if(oldDir.exists() && oldDir.canRead()){
+
+ // if our new directory doesn't exist, we'll create it
+ if(!newDir.exists())
+ newDir.mkdirs();
+
+ if(newDir.exists() && newDir.canWrite()){
+ Log.d(TAG,"manageNewStoragePath (" + trackId + "): copy directory");
+ // we'll first copy all files to our new storage area... we'll clean up later
+ FileSystemUtils.copyDirectoryContents(newDir, oldDir);
+
+ // cleaning up new storage area
+ // find gpx files we accidentally copied to our new storage area and delete them
+ for(File gpxFile:newDir.listFiles(gpxFilenameFilter)){
+ Log.d(TAG,"manageNewStoragePath (" + trackId + "): deleting gpx file ["+gpxFile+"]");
+ gpxFile.delete();
+ }
+ }else{
+ Log.e(TAG, "manageNewStoragePath (" + trackId + "): directory ["+newDir+"] is not writable or could not be created");
+ }
+
+ }
+ }while(cursor.moveToNext());
+ }
+
+ //close cursor
+ if(cursor !=null && !cursor.isClosed()){
+ cursor.close();
+ }
+
+ ContentValues vals = new ContentValues();
+ vals.putNull(TrackContentProvider.Schema.COL_DIR);
+ db.update(TrackContentProvider.Schema.TBL_TRACK, vals, null, null);
+ }
+
+}
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/db/ExportDatabaseTask.java b/app/src/main/java/org/osmtracker/db/ExportDatabaseTask.java
similarity index 93%
rename from app/src/main/java/me/guillaumin/android/osmtracker/db/ExportDatabaseTask.java
rename to app/src/main/java/org/osmtracker/db/ExportDatabaseTask.java
index d601c2c9f..b4e18a326 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/db/ExportDatabaseTask.java
+++ b/app/src/main/java/org/osmtracker/db/ExportDatabaseTask.java
@@ -1,7 +1,5 @@
-package me.guillaumin.android.osmtracker.db;
+package org.osmtracker.db;
-import android.app.Activity;
-import android.content.Context;
import android.os.AsyncTask;
import android.os.Bundle;
@@ -13,8 +11,7 @@
import java.io.OutputStream;
import java.util.zip.GZIPOutputStream;
-import me.guillaumin.android.osmtracker.R;
-import me.guillaumin.android.osmtracker.activity.About;
+import org.osmtracker.activity.About;
/**
* Task to export the internal database to the external storage,
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/db/TrackContentProvider.java b/app/src/main/java/org/osmtracker/db/TrackContentProvider.java
similarity index 99%
rename from app/src/main/java/me/guillaumin/android/osmtracker/db/TrackContentProvider.java
rename to app/src/main/java/org/osmtracker/db/TrackContentProvider.java
index b7bf59c37..3325fc740 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/db/TrackContentProvider.java
+++ b/app/src/main/java/org/osmtracker/db/TrackContentProvider.java
@@ -1,9 +1,10 @@
-package me.guillaumin.android.osmtracker.db;
+package org.osmtracker.db;
import java.util.ArrayList;
import java.util.List;
-import me.guillaumin.android.osmtracker.OSMTracker;
+import org.osmtracker.OSMTracker;
+
import android.content.ContentProvider;
import android.content.ContentResolver;
import android.content.ContentUris;
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/db/TracklistAdapter.java b/app/src/main/java/org/osmtracker/db/TracklistAdapter.java
similarity index 76%
rename from app/src/main/java/me/guillaumin/android/osmtracker/db/TracklistAdapter.java
rename to app/src/main/java/org/osmtracker/db/TracklistAdapter.java
index 48c319bd8..ca2d5452a 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/db/TracklistAdapter.java
+++ b/app/src/main/java/org/osmtracker/db/TracklistAdapter.java
@@ -1,8 +1,9 @@
-package me.guillaumin.android.osmtracker.db;
+package org.osmtracker.db;
+
+import org.osmtracker.R;
+import org.osmtracker.db.model.Track;
+import org.osmtracker.activity.TrackManager;
-import me.guillaumin.android.osmtracker.R;
-import me.guillaumin.android.osmtracker.db.TrackContentProvider.Schema;
-import me.guillaumin.android.osmtracker.db.model.Track;
import android.content.Context;
import android.database.Cursor;
import android.view.LayoutInflater;
@@ -13,7 +14,7 @@
import android.widget.TextView;
/**
- * Adapter for track list in {@link me.guillaumin.android.osmtracker.activity.TrackManager Track Manager}.
+ * Adapter for track list in {@link TrackManager Track Manager}.
* For each row's contents, see tracklist_item.xml.
*
* @author Nicolas Guillaumin
@@ -57,12 +58,12 @@ private View bind(Cursor cursor, View v, Context context) {
ImageView vUploadStatus = (ImageView) v.findViewById(R.id.trackmgr_item_upload_statusicon);
// Is track active ?
- int active = cursor.getInt(cursor.getColumnIndex(Schema.COL_ACTIVE));
- if (Schema.VAL_TRACK_ACTIVE == active) {
+ int active = cursor.getInt(cursor.getColumnIndex(TrackContentProvider.Schema.COL_ACTIVE));
+ if (TrackContentProvider.Schema.VAL_TRACK_ACTIVE == active) {
// Yellow clock icon for Active
vStatus.setImageResource(android.R.drawable.presence_away);
vStatus.setVisibility(View.VISIBLE);
- } else if (cursor.isNull(cursor.getColumnIndex(Schema.COL_EXPORT_DATE))) {
+ } else if (cursor.isNull(cursor.getColumnIndex(TrackContentProvider.Schema.COL_EXPORT_DATE))) {
// Hide green circle icon: Track not yet exported
vStatus.setVisibility(View.GONE);
} else {
@@ -72,12 +73,12 @@ private View bind(Cursor cursor, View v, Context context) {
}
// Upload status
- if (cursor.isNull(cursor.getColumnIndex(Schema.COL_OSM_UPLOAD_DATE))) {
+ if (cursor.isNull(cursor.getColumnIndex(TrackContentProvider.Schema.COL_OSM_UPLOAD_DATE))) {
vUploadStatus.setVisibility(View.GONE);
}
// Bind id
- long trackId = cursor.getLong(cursor.getColumnIndex(Schema.COL_ID));
+ long trackId = cursor.getLong(cursor.getColumnIndex(TrackContentProvider.Schema.COL_ID));
String strTrackId = Long.toString(trackId);
vId.setText("#" + strTrackId);
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/db/WaypointListAdapter.java b/app/src/main/java/org/osmtracker/db/WaypointListAdapter.java
similarity index 71%
rename from app/src/main/java/me/guillaumin/android/osmtracker/db/WaypointListAdapter.java
rename to app/src/main/java/org/osmtracker/db/WaypointListAdapter.java
index 046ad3b69..1cc22ed74 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/db/WaypointListAdapter.java
+++ b/app/src/main/java/org/osmtracker/db/WaypointListAdapter.java
@@ -1,11 +1,11 @@
-package me.guillaumin.android.osmtracker.db;
+package org.osmtracker.db;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.TimeZone;
-import me.guillaumin.android.osmtracker.R;
-import me.guillaumin.android.osmtracker.db.TrackContentProvider.Schema;
+import org.osmtracker.R;
+
import android.content.Context;
import android.database.Cursor;
import android.view.LayoutInflater;
@@ -73,35 +73,35 @@ private View bind(Cursor cursor, RelativeLayout rl, Context context) {
TextView vTimestamp = (TextView) rl.findViewById(R.id.wplist_item_timestamp);
// Bind name
- String name = cursor.getString(cursor.getColumnIndex(Schema.COL_NAME));
+ String name = cursor.getString(cursor.getColumnIndex(TrackContentProvider.Schema.COL_NAME));
vName.setText(name);
// Bind location
StringBuffer locationAsString = new StringBuffer();
locationAsString.append(context.getResources().getString(R.string.wplist_latitude)
- + cursor.getString(cursor.getColumnIndex(Schema.COL_LATITUDE)));
+ + cursor.getString(cursor.getColumnIndex(TrackContentProvider.Schema.COL_LATITUDE)));
locationAsString.append(", " + context.getResources().getString(R.string.wplist_longitude)
- + cursor.getString(cursor.getColumnIndex(Schema.COL_LONGITUDE)));
- if (!cursor.isNull(cursor.getColumnIndex(Schema.COL_ELEVATION))) {
+ + cursor.getString(cursor.getColumnIndex(TrackContentProvider.Schema.COL_LONGITUDE)));
+ if (!cursor.isNull(cursor.getColumnIndex(TrackContentProvider.Schema.COL_ELEVATION))) {
locationAsString.append(", " + context.getResources().getString(R.string.wplist_elevation)
- + cursor.getString(cursor.getColumnIndex(Schema.COL_ELEVATION)));
+ + cursor.getString(cursor.getColumnIndex(TrackContentProvider.Schema.COL_ELEVATION)));
}
- if (!cursor.isNull(cursor.getColumnIndex(Schema.COL_ACCURACY))) {
+ if (!cursor.isNull(cursor.getColumnIndex(TrackContentProvider.Schema.COL_ACCURACY))) {
locationAsString.append(", " + context.getResources().getString(R.string.wplist_accuracy)
- + cursor.getString(cursor.getColumnIndex(Schema.COL_ACCURACY)));
+ + cursor.getString(cursor.getColumnIndex(TrackContentProvider.Schema.COL_ACCURACY)));
}
- if (!cursor.isNull(cursor.getColumnIndex(Schema.COL_COMPASS))) {
+ if (!cursor.isNull(cursor.getColumnIndex(TrackContentProvider.Schema.COL_COMPASS))) {
locationAsString.append(", " + context.getResources().getString(R.string.wplist_compass)
- + cursor.getString(cursor.getColumnIndex(Schema.COL_COMPASS)));
+ + cursor.getString(cursor.getColumnIndex(TrackContentProvider.Schema.COL_COMPASS)));
locationAsString.append(", " + context.getResources().getString(R.string.wplist_compass_accuracy)
- + cursor.getString(cursor.getColumnIndex(Schema.COL_COMPASS_ACCURACY)));
+ + cursor.getString(cursor.getColumnIndex(TrackContentProvider.Schema.COL_COMPASS_ACCURACY)));
}
vLocation.setText(locationAsString.toString());
// Bind timestamp
- Date ts = new Date(cursor.getLong(cursor.getColumnIndex(Schema.COL_TIMESTAMP)));
+ Date ts = new Date(cursor.getLong(cursor.getColumnIndex(TrackContentProvider.Schema.COL_TIMESTAMP)));
vTimestamp.setText(DATE_FORMATTER.format(ts));
return rl;
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/db/model/Track.java b/app/src/main/java/org/osmtracker/db/model/Track.java
similarity index 79%
rename from app/src/main/java/me/guillaumin/android/osmtracker/db/model/Track.java
rename to app/src/main/java/org/osmtracker/db/model/Track.java
index aeb992e9f..0a2d2a8c0 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/db/model/Track.java
+++ b/app/src/main/java/org/osmtracker/db/model/Track.java
@@ -1,4 +1,4 @@
-package me.guillaumin.android.osmtracker.db.model;
+package org.osmtracker.db.model;
import java.text.DateFormat;
import java.util.ArrayList;
@@ -6,9 +6,9 @@
import java.util.Date;
import java.util.List;
-import me.guillaumin.android.osmtracker.R;
-import me.guillaumin.android.osmtracker.db.TrackContentProvider;
-import me.guillaumin.android.osmtracker.db.TrackContentProvider.Schema;
+import org.osmtracker.R;
+import org.osmtracker.db.TrackContentProvider;
+
import android.content.ContentResolver;
import android.database.Cursor;
@@ -76,21 +76,21 @@ public static Track build(final long trackId, Cursor tc, ContentResolver cr, boo
out.trackId = trackId;
out.cr = cr;
- out.trackDate = tc.getLong(tc.getColumnIndex(Schema.COL_START_DATE));
+ out.trackDate = tc.getLong(tc.getColumnIndex(TrackContentProvider.Schema.COL_START_DATE));
- out.name = tc.getString(tc.getColumnIndex(Schema.COL_NAME));
- out.description = tc.getString(tc.getColumnIndex(Schema.COL_DESCRIPTION));
+ out.name = tc.getString(tc.getColumnIndex(TrackContentProvider.Schema.COL_NAME));
+ out.description = tc.getString(tc.getColumnIndex(TrackContentProvider.Schema.COL_DESCRIPTION));
- String tags = tc.getString(tc.getColumnIndex(Schema.COL_TAGS));
+ String tags = tc.getString(tc.getColumnIndex(TrackContentProvider.Schema.COL_TAGS));
if (tags != null && ! "".equals(tags)) {
out.tags.addAll(Arrays.asList(tags.split(",")));
}
- out.visibility = OSMVisibility.valueOf(tc.getString(tc.getColumnIndex(Schema.COL_OSM_VISIBILITY)));
+ out.visibility = OSMVisibility.valueOf(tc.getString(tc.getColumnIndex(TrackContentProvider.Schema.COL_OSM_VISIBILITY)));
- out.tpCount = tc.getInt(tc.getColumnIndex(Schema.COL_TRACKPOINT_COUNT));
+ out.tpCount = tc.getInt(tc.getColumnIndex(TrackContentProvider.Schema.COL_TRACKPOINT_COUNT));
- out.wpCount = tc.getInt(tc.getColumnIndex(Schema.COL_WAYPOINT_COUNT));
+ out.wpCount = tc.getInt(tc.getColumnIndex(TrackContentProvider.Schema.COL_WAYPOINT_COUNT));
if(withExtraInformation){
out.readExtraInformation();
@@ -103,17 +103,17 @@ private void readExtraInformation(){
if(!extraInformationRead){
Cursor startCursor = cr.query(TrackContentProvider.trackStartUri(trackId), null, null, null, null);
if(startCursor.moveToFirst()){
- startDate = startCursor.getLong(startCursor.getColumnIndex(Schema.COL_TIMESTAMP));
- startLat = startCursor.getFloat(startCursor.getColumnIndex(Schema.COL_LATITUDE));
- startLong = startCursor.getFloat(startCursor.getColumnIndex(Schema.COL_LONGITUDE));
+ startDate = startCursor.getLong(startCursor.getColumnIndex(TrackContentProvider.Schema.COL_TIMESTAMP));
+ startLat = startCursor.getFloat(startCursor.getColumnIndex(TrackContentProvider.Schema.COL_LATITUDE));
+ startLong = startCursor.getFloat(startCursor.getColumnIndex(TrackContentProvider.Schema.COL_LONGITUDE));
}
startCursor.close();
Cursor endCursor = cr.query(TrackContentProvider.trackEndUri(trackId), null, null, null, null);
if(endCursor.moveToFirst()){
- endDate = endCursor.getLong(endCursor.getColumnIndex(Schema.COL_TIMESTAMP));
- endLat = endCursor.getFloat(endCursor.getColumnIndex(Schema.COL_LATITUDE));
- endLong = endCursor.getFloat(endCursor.getColumnIndex(Schema.COL_LONGITUDE));
+ endDate = endCursor.getLong(endCursor.getColumnIndex(TrackContentProvider.Schema.COL_TIMESTAMP));
+ endLat = endCursor.getFloat(endCursor.getColumnIndex(TrackContentProvider.Schema.COL_LATITUDE));
+ endLong = endCursor.getFloat(endCursor.getColumnIndex(TrackContentProvider.Schema.COL_LONGITUDE));
}
endCursor.close();
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/exception/CreateTrackException.java b/app/src/main/java/org/osmtracker/exception/CreateTrackException.java
similarity index 73%
rename from app/src/main/java/me/guillaumin/android/osmtracker/exception/CreateTrackException.java
rename to app/src/main/java/org/osmtracker/exception/CreateTrackException.java
index 44fc8755b..95379b0e8 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/exception/CreateTrackException.java
+++ b/app/src/main/java/org/osmtracker/exception/CreateTrackException.java
@@ -1,4 +1,4 @@
-package me.guillaumin.android.osmtracker.exception;
+package org.osmtracker.exception;
public class CreateTrackException extends Exception {
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/exception/ExportTrackException.java b/app/src/main/java/org/osmtracker/exception/ExportTrackException.java
similarity index 73%
rename from app/src/main/java/me/guillaumin/android/osmtracker/exception/ExportTrackException.java
rename to app/src/main/java/org/osmtracker/exception/ExportTrackException.java
index cdce3deec..17c2471d4 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/exception/ExportTrackException.java
+++ b/app/src/main/java/org/osmtracker/exception/ExportTrackException.java
@@ -1,4 +1,4 @@
-package me.guillaumin.android.osmtracker.exception;
+package org.osmtracker.exception;
public class ExportTrackException extends Exception {
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/gpx/ExportToStorageTask.java b/app/src/main/java/org/osmtracker/gpx/ExportToStorageTask.java
similarity index 91%
rename from app/src/main/java/me/guillaumin/android/osmtracker/gpx/ExportToStorageTask.java
rename to app/src/main/java/org/osmtracker/gpx/ExportToStorageTask.java
index f23246b9d..a5427b601 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/gpx/ExportToStorageTask.java
+++ b/app/src/main/java/org/osmtracker/gpx/ExportToStorageTask.java
@@ -1,12 +1,13 @@
-package me.guillaumin.android.osmtracker.gpx;
+package org.osmtracker.gpx;
import java.io.File;
import java.util.Date;
-import me.guillaumin.android.osmtracker.OSMTracker;
-import me.guillaumin.android.osmtracker.R;
-import me.guillaumin.android.osmtracker.db.DataHelper;
-import me.guillaumin.android.osmtracker.exception.ExportTrackException;
+import org.osmtracker.OSMTracker;
+import org.osmtracker.R;
+import org.osmtracker.db.DataHelper;
+import org.osmtracker.exception.ExportTrackException;
+
import android.content.Context;
import android.content.SharedPreferences;
import android.os.Environment;
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/gpx/ExportToTempFileTask.java b/app/src/main/java/org/osmtracker/gpx/ExportToTempFileTask.java
similarity index 92%
rename from app/src/main/java/me/guillaumin/android/osmtracker/gpx/ExportToTempFileTask.java
rename to app/src/main/java/org/osmtracker/gpx/ExportToTempFileTask.java
index 7c3521626..7133dc851 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/gpx/ExportToTempFileTask.java
+++ b/app/src/main/java/org/osmtracker/gpx/ExportToTempFileTask.java
@@ -1,10 +1,10 @@
-package me.guillaumin.android.osmtracker.gpx;
+package org.osmtracker.gpx;
import java.io.File;
import java.io.IOException;
import java.util.Date;
-import me.guillaumin.android.osmtracker.exception.ExportTrackException;
+import org.osmtracker.exception.ExportTrackException;
import android.content.Context;
import android.database.Cursor;
import android.util.Log;
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/gpx/ExportTrackTask.java b/app/src/main/java/org/osmtracker/gpx/ExportTrackTask.java
similarity index 79%
rename from app/src/main/java/me/guillaumin/android/osmtracker/gpx/ExportTrackTask.java
rename to app/src/main/java/org/osmtracker/gpx/ExportTrackTask.java
index e7816b1b7..0628a6b2e 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/gpx/ExportTrackTask.java
+++ b/app/src/main/java/org/osmtracker/gpx/ExportTrackTask.java
@@ -1,4 +1,4 @@
-package me.guillaumin.android.osmtracker.gpx;
+package org.osmtracker.gpx;
import java.io.BufferedWriter;
import java.io.File;
@@ -12,13 +12,12 @@
import java.util.TimeZone;
import java.util.regex.Pattern;
-import me.guillaumin.android.osmtracker.OSMTracker;
-import me.guillaumin.android.osmtracker.R;
-import me.guillaumin.android.osmtracker.db.DataHelper;
-import me.guillaumin.android.osmtracker.db.TrackContentProvider;
-import me.guillaumin.android.osmtracker.db.TrackContentProvider.Schema;
-import me.guillaumin.android.osmtracker.exception.ExportTrackException;
-import me.guillaumin.android.osmtracker.util.FileSystemUtils;
+import org.osmtracker.OSMTracker;
+import org.osmtracker.R;
+import org.osmtracker.db.DataHelper;
+import org.osmtracker.db.TrackContentProvider;
+import org.osmtracker.exception.ExportTrackException;
+import org.osmtracker.util.FileSystemUtils;
import android.app.AlertDialog;
import android.app.ProgressDialog;
import android.content.ContentResolver;
@@ -26,10 +25,8 @@
import android.content.Context;
import android.content.DialogInterface;
import android.content.DialogInterface.OnClickListener;
-import android.content.Intent;
import android.database.Cursor;
import android.media.MediaScannerConnection;
-import android.net.Uri;
import android.os.AsyncTask;
import android.os.Environment;
import android.preference.PreferenceManager;
@@ -210,7 +207,7 @@ private void exportTrackAsGpx(long trackId) throws ExportTrackException {
Date startDate = new Date();
if (null != c && 1 <= c.getCount()) {
c.moveToFirst();
- long startDateInMilliseconds = c.getLong(c.getColumnIndex(Schema.COL_START_DATE));
+ long startDateInMilliseconds = c.getLong(c.getColumnIndex(TrackContentProvider.Schema.COL_START_DATE));
startDate.setTime(startDateInMilliseconds);
}
@@ -222,9 +219,9 @@ private void exportTrackAsGpx(long trackId) throws ExportTrackException {
Cursor cTrackPoints = cr.query(TrackContentProvider.trackPointsUri(trackId), null,
- null, null, Schema.COL_TIMESTAMP + " asc");
+ null, null, TrackContentProvider.Schema.COL_TIMESTAMP + " asc");
Cursor cWayPoints = cr.query(TrackContentProvider.waypointsUri(trackId), null, null,
- null, Schema.COL_TIMESTAMP + " asc");
+ null, TrackContentProvider.Schema.COL_TIMESTAMP + " asc");
if (null != cTrackPoints && null != cWayPoints) {
publishProgress(new Long[] { trackId, (long) cTrackPoints.getCount(), (long) cWayPoints.getCount() });
@@ -327,31 +324,31 @@ private void writeTrackPoints(String trackName, Writer fw, Cursor c, boolean fil
for(c.moveToFirst(); !c.isAfterLast(); c.moveToNext(),i++) {
StringBuffer out = new StringBuffer();
out.append("\t\t\t" + "" + "\n");
- if (! c.isNull(c.getColumnIndex(Schema.COL_ELEVATION))) {
- out.append("\t\t\t\t" + "" + c.getDouble(c.getColumnIndex(Schema.COL_ELEVATION)) + "" + "\n");
+ + c.getDouble(c.getColumnIndex(TrackContentProvider.Schema.COL_LATITUDE)) + "\" "
+ + "lon=\"" + c.getDouble(c.getColumnIndex(TrackContentProvider.Schema.COL_LONGITUDE)) + "\">" + "\n");
+ if (! c.isNull(c.getColumnIndex(TrackContentProvider.Schema.COL_ELEVATION))) {
+ out.append("\t\t\t\t" + "" + c.getDouble(c.getColumnIndex(TrackContentProvider.Schema.COL_ELEVATION)) + "" + "\n");
}
- out.append("\t\t\t\t" + "" + "\n");
+ out.append("\t\t\t\t" + "" + "\n");
- if(fillHDOP && ! c.isNull(c.getColumnIndex(Schema.COL_ACCURACY))) {
- out.append("\t\t\t\t" + "" + (c.getDouble(c.getColumnIndex(Schema.COL_ACCURACY)) / OSMTracker.HDOP_APPROXIMATION_FACTOR) + "" + "\n");
+ if(fillHDOP && ! c.isNull(c.getColumnIndex(TrackContentProvider.Schema.COL_ACCURACY))) {
+ out.append("\t\t\t\t" + "" + (c.getDouble(c.getColumnIndex(TrackContentProvider.Schema.COL_ACCURACY)) / OSMTracker.HDOP_APPROXIMATION_FACTOR) + "" + "\n");
}
- if(OSMTracker.Preferences.VAL_OUTPUT_COMPASS_COMMENT.equals(compass) && !c.isNull(c.getColumnIndex(Schema.COL_COMPASS))) {
+ if(OSMTracker.Preferences.VAL_OUTPUT_COMPASS_COMMENT.equals(compass) && !c.isNull(c.getColumnIndex(TrackContentProvider.Schema.COL_COMPASS))) {
out.append("\t\t\t\t" + ""+CDATA_START+"compass: " +
- c.getDouble(c.getColumnIndex(Schema.COL_COMPASS))+
+ c.getDouble(c.getColumnIndex(TrackContentProvider.Schema.COL_COMPASS))+
"\n\t\t\t\t\tcompAccuracy: " +
- c.getLong(c.getColumnIndex(Schema.COL_COMPASS_ACCURACY))+
+ c.getLong(c.getColumnIndex(TrackContentProvider.Schema.COL_COMPASS_ACCURACY))+
CDATA_END+""+"\n");
}
String buff = "";
- if(! c.isNull(c.getColumnIndex(Schema.COL_SPEED))) {
- buff += "\t\t\t\t\t" + "" + c.getDouble(c.getColumnIndex(Schema.COL_SPEED)) + "" + "\n";
+ if(! c.isNull(c.getColumnIndex(TrackContentProvider.Schema.COL_SPEED))) {
+ buff += "\t\t\t\t\t" + "" + c.getDouble(c.getColumnIndex(TrackContentProvider.Schema.COL_SPEED)) + "" + "\n";
}
- if(OSMTracker.Preferences.VAL_OUTPUT_COMPASS_EXTENSION.equals(compass) && !c.isNull(c.getColumnIndex(Schema.COL_COMPASS))) {
- buff += "\t\t\t\t\t" + "" + c.getDouble(c.getColumnIndex(Schema.COL_COMPASS)) + "" + "\n";
- buff += "\t\t\t\t\t" + "" + c.getDouble(c.getColumnIndex(Schema.COL_COMPASS_ACCURACY)) + "" + "\n";
+ if(OSMTracker.Preferences.VAL_OUTPUT_COMPASS_EXTENSION.equals(compass) && !c.isNull(c.getColumnIndex(TrackContentProvider.Schema.COL_COMPASS))) {
+ buff += "\t\t\t\t\t" + "" + c.getDouble(c.getColumnIndex(TrackContentProvider.Schema.COL_COMPASS)) + "" + "\n";
+ buff += "\t\t\t\t\t" + "" + c.getDouble(c.getColumnIndex(TrackContentProvider.Schema.COL_COMPASS_ACCURACY)) + "" + "\n";
}
if(! buff.equals("")) {
out.append("\t\t\t\t" + "\n");
@@ -397,40 +394,40 @@ private void writeWayPoints(Writer fw, Cursor c, String accuracyInfo, boolean fi
for(c.moveToFirst(); !c.isAfterLast(); c.moveToNext(), i++) {
StringBuffer out = new StringBuffer();
out.append("\t" + "" + "\n");
- if (! c.isNull(c.getColumnIndex(Schema.COL_ELEVATION))) {
- out.append("\t\t" + "" + c.getDouble(c.getColumnIndex(Schema.COL_ELEVATION)) + "" + "\n");
+ + c.getDouble(c.getColumnIndex(TrackContentProvider.Schema.COL_LATITUDE)) + "\" "
+ + "lon=\"" + c.getDouble(c.getColumnIndex(TrackContentProvider.Schema.COL_LONGITUDE)) + "\">" + "\n");
+ if (! c.isNull(c.getColumnIndex(TrackContentProvider.Schema.COL_ELEVATION))) {
+ out.append("\t\t" + "" + c.getDouble(c.getColumnIndex(TrackContentProvider.Schema.COL_ELEVATION)) + "" + "\n");
}
- out.append("\t\t" + "" + "\n");
+ out.append("\t\t" + "" + "\n");
- String name = c.getString(c.getColumnIndex(Schema.COL_NAME));
+ String name = c.getString(c.getColumnIndex(TrackContentProvider.Schema.COL_NAME));
- if (! OSMTracker.Preferences.VAL_OUTPUT_ACCURACY_NONE.equals(accuracyInfo) && ! c.isNull(c.getColumnIndex(Schema.COL_ACCURACY))) {
+ if (! OSMTracker.Preferences.VAL_OUTPUT_ACCURACY_NONE.equals(accuracyInfo) && ! c.isNull(c.getColumnIndex(TrackContentProvider.Schema.COL_ACCURACY))) {
// Outputs accuracy info for way point
if (OSMTracker.Preferences.VAL_OUTPUT_ACCURACY_WPT_NAME.equals(accuracyInfo)) {
// Output accuracy with name
out.append("\t\t" + ""
+ CDATA_START
+ name
- + " (" + c.getDouble(c.getColumnIndex(Schema.COL_ACCURACY)) + meterUnit + ")"
+ + " (" + c.getDouble(c.getColumnIndex(TrackContentProvider.Schema.COL_ACCURACY)) + meterUnit + ")"
+ CDATA_END
+ "" + "\n");
if (OSMTracker.Preferences.VAL_OUTPUT_COMPASS_COMMENT.equals(compass) &&
- ! c.isNull(c.getColumnIndex(Schema.COL_COMPASS))) {
- out.append("\t\t"+ "" + CDATA_START + "compass: " + c.getDouble(c.getColumnIndex(Schema.COL_COMPASS)) +
- "\n\t\t\tcompass accuracy: " + c.getInt(c.getColumnIndex(Schema.COL_COMPASS_ACCURACY)) + CDATA_END + "\n");
+ ! c.isNull(c.getColumnIndex(TrackContentProvider.Schema.COL_COMPASS))) {
+ out.append("\t\t"+ "" + CDATA_START + "compass: " + c.getDouble(c.getColumnIndex(TrackContentProvider.Schema.COL_COMPASS)) +
+ "\n\t\t\tcompass accuracy: " + c.getInt(c.getColumnIndex(TrackContentProvider.Schema.COL_COMPASS_ACCURACY)) + CDATA_END + "\n");
}
} else if (OSMTracker.Preferences.VAL_OUTPUT_ACCURACY_WPT_CMT.equals(accuracyInfo)) {
// Output accuracy in separate tag
out.append("\t\t" + "" + CDATA_START + name + CDATA_END + "" + "\n");
if (OSMTracker.Preferences.VAL_OUTPUT_COMPASS_COMMENT.equals(compass) &&
- ! c.isNull(c.getColumnIndex(Schema.COL_COMPASS))) {
- out.append("\t\t" + "" + CDATA_START + accuracy + ": " + c.getDouble(c.getColumnIndex(Schema.COL_ACCURACY)) + meterUnit +
- "\n\t\t\t compass heading: " + c.getDouble(c.getColumnIndex(Schema.COL_COMPASS)) +
- "deg\n\t\t\t compass accuracy: " + c.getDouble(c.getColumnIndex(Schema.COL_COMPASS_ACCURACY)) +CDATA_END + "" + "\n");
+ ! c.isNull(c.getColumnIndex(TrackContentProvider.Schema.COL_COMPASS))) {
+ out.append("\t\t" + "" + CDATA_START + accuracy + ": " + c.getDouble(c.getColumnIndex(TrackContentProvider.Schema.COL_ACCURACY)) + meterUnit +
+ "\n\t\t\t compass heading: " + c.getDouble(c.getColumnIndex(TrackContentProvider.Schema.COL_COMPASS)) +
+ "deg\n\t\t\t compass accuracy: " + c.getDouble(c.getColumnIndex(TrackContentProvider.Schema.COL_COMPASS_ACCURACY)) +CDATA_END + "" + "\n");
} else {
- out.append("\t\t" + "" + CDATA_START + accuracy + ": " + c.getDouble(c.getColumnIndex(Schema.COL_ACCURACY)) + meterUnit + CDATA_END + "" + "\n");
+ out.append("\t\t" + "" + CDATA_START + accuracy + ": " + c.getDouble(c.getColumnIndex(TrackContentProvider.Schema.COL_ACCURACY)) + meterUnit + CDATA_END + "" + "\n");
}
} else {
// Unknown value for accuracy info, shouldn't occur but who knows ?
@@ -441,32 +438,32 @@ private void writeWayPoints(Writer fw, Cursor c, String accuracyInfo, boolean fi
// No accuracy info requested, or available
out.append("\t\t" + "" + CDATA_START + name + CDATA_END + "" + "\n");
if (OSMTracker.Preferences.VAL_OUTPUT_COMPASS_COMMENT.equals(compass) &&
- ! c.isNull(c.getColumnIndex(Schema.COL_COMPASS))) {
- out.append("\t\t"+ "" + CDATA_START + "compass: " + c.getDouble(c.getColumnIndex(Schema.COL_COMPASS)) +
- "\n\t\t\tcompass accuracy: " + c.getInt(c.getColumnIndex(Schema.COL_COMPASS_ACCURACY)) + CDATA_END + "\n");
+ ! c.isNull(c.getColumnIndex(TrackContentProvider.Schema.COL_COMPASS))) {
+ out.append("\t\t"+ "" + CDATA_START + "compass: " + c.getDouble(c.getColumnIndex(TrackContentProvider.Schema.COL_COMPASS)) +
+ "\n\t\t\tcompass accuracy: " + c.getInt(c.getColumnIndex(TrackContentProvider.Schema.COL_COMPASS_ACCURACY)) + CDATA_END + "\n");
}
}
- String link = c.getString(c.getColumnIndex(Schema.COL_LINK));
+ String link = c.getString(c.getColumnIndex(TrackContentProvider.Schema.COL_LINK));
if (link != null) {
out.append("\t\t" + "" + "\n");
out.append("\t\t\t" + "" + link +"\n");
out.append("\t\t" + "" + "\n");
}
- if (! c.isNull(c.getColumnIndex(Schema.COL_NBSATELLITES))) {
- out.append("\t\t" + "" + c.getInt(c.getColumnIndex(Schema.COL_NBSATELLITES)) + "" + "\n");
+ if (! c.isNull(c.getColumnIndex(TrackContentProvider.Schema.COL_NBSATELLITES))) {
+ out.append("\t\t" + "" + c.getInt(c.getColumnIndex(TrackContentProvider.Schema.COL_NBSATELLITES)) + "" + "\n");
}
- if(fillHDOP && ! c.isNull(c.getColumnIndex(Schema.COL_ACCURACY))) {
- out.append("\t\t" + "" + (c.getDouble(c.getColumnIndex(Schema.COL_ACCURACY)) / OSMTracker.HDOP_APPROXIMATION_FACTOR) + "" + "\n");
+ if(fillHDOP && ! c.isNull(c.getColumnIndex(TrackContentProvider.Schema.COL_ACCURACY))) {
+ out.append("\t\t" + "" + (c.getDouble(c.getColumnIndex(TrackContentProvider.Schema.COL_ACCURACY)) / OSMTracker.HDOP_APPROXIMATION_FACTOR) + "" + "\n");
}
if (OSMTracker.Preferences.VAL_OUTPUT_COMPASS_EXTENSION.equals(compass) &&
- ! c.isNull(c.getColumnIndex(Schema.COL_COMPASS))) {
+ ! c.isNull(c.getColumnIndex(TrackContentProvider.Schema.COL_COMPASS))) {
out.append("\t\t\n");
- out.append("\t\t\t"+ "" + c.getDouble(c.getColumnIndex(Schema.COL_COMPASS)) + "\n");
- out.append("\t\t\t" + "" + c.getInt(c.getColumnIndex(Schema.COL_COMPASS_ACCURACY)) + "" + "\n");
+ out.append("\t\t\t"+ "" + c.getDouble(c.getColumnIndex(TrackContentProvider.Schema.COL_COMPASS)) + "\n");
+ out.append("\t\t\t" + "" + c.getInt(c.getColumnIndex(TrackContentProvider.Schema.COL_COMPASS_ACCURACY)) + "" + "\n");
out.append("\t\t\n");
}
@@ -500,7 +497,7 @@ private void copyWaypointFiles(long trackId, File gpxOutputDirectory) {
* The filename will have the start date, and/or the track name if available.
* If no name is available, fall back to the start date and time.
* Track name characters will be sanitized using {@link #FILENAME_CHARS_BLACKLIST_PATTERN}.
- * @param c Track info: {@link Schema#COL_NAME}, {@link Schema#COL_START_DATE}
+ * @param c Track info: {@link TrackContentProvider.Schema#COL_NAME}, {@link TrackContentProvider.Schema#COL_START_DATE}
* @return GPX filename, not including the path
*/
protected String buildGPXFilename(Cursor c) {
@@ -509,7 +506,7 @@ protected String buildGPXFilename(Cursor c) {
OSMTracker.Preferences.KEY_OUTPUT_FILENAME,
OSMTracker.Preferences.VAL_OUTPUT_FILENAME);
StringBuffer filenameBase = new StringBuffer();
- final int colName = c.getColumnIndexOrThrow(Schema.COL_NAME);
+ final int colName = c.getColumnIndexOrThrow(TrackContentProvider.Schema.COL_NAME);
if ((! c.isNull(colName))
&& (! filenameOutput.equals(OSMTracker.Preferences.VAL_OUTPUT_FILENAME_DATE)))
{
@@ -522,7 +519,7 @@ protected String buildGPXFilename(Cursor c) {
if ((filenameBase.length() == 0)
|| ! filenameOutput.equals(OSMTracker.Preferences.VAL_OUTPUT_FILENAME_NAME))
{
- final long startDate = c.getLong(c.getColumnIndex(Schema.COL_START_DATE));
+ final long startDate = c.getLong(c.getColumnIndex(TrackContentProvider.Schema.COL_START_DATE));
if (filenameBase.length() > 0)
filenameBase.append('_');
filenameBase.append(DataHelper.FILENAME_FORMATTER.format(new Date(startDate)));
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/layout/DisablableTableLayout.java b/app/src/main/java/org/osmtracker/layout/DisablableTableLayout.java
similarity index 96%
rename from app/src/main/java/me/guillaumin/android/osmtracker/layout/DisablableTableLayout.java
rename to app/src/main/java/org/osmtracker/layout/DisablableTableLayout.java
index 80b1c9f3b..6cd7c9b40 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/layout/DisablableTableLayout.java
+++ b/app/src/main/java/org/osmtracker/layout/DisablableTableLayout.java
@@ -1,4 +1,4 @@
-package me.guillaumin.android.osmtracker.layout;
+package org.osmtracker.layout;
import android.content.Context;
import android.view.View;
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/layout/GpsStatusRecord.java b/app/src/main/java/org/osmtracker/layout/GpsStatusRecord.java
similarity index 97%
rename from app/src/main/java/me/guillaumin/android/osmtracker/layout/GpsStatusRecord.java
rename to app/src/main/java/org/osmtracker/layout/GpsStatusRecord.java
index b20ba423d..ae9956a6b 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/layout/GpsStatusRecord.java
+++ b/app/src/main/java/org/osmtracker/layout/GpsStatusRecord.java
@@ -1,10 +1,10 @@
-package me.guillaumin.android.osmtracker.layout;
+package org.osmtracker.layout;
import java.text.DecimalFormat;
-import me.guillaumin.android.osmtracker.OSMTracker;
-import me.guillaumin.android.osmtracker.R;
-import me.guillaumin.android.osmtracker.activity.TrackLogger;
+import org.osmtracker.OSMTracker;
+import org.osmtracker.R;
+import org.osmtracker.activity.TrackLogger;
import android.content.Context;
import android.location.GpsSatellite;
import android.location.GpsStatus;
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/layout/UserDefinedLayout.java b/app/src/main/java/org/osmtracker/layout/UserDefinedLayout.java
similarity index 85%
rename from app/src/main/java/me/guillaumin/android/osmtracker/layout/UserDefinedLayout.java
rename to app/src/main/java/org/osmtracker/layout/UserDefinedLayout.java
index ace72359c..d4df5eb88 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/layout/UserDefinedLayout.java
+++ b/app/src/main/java/org/osmtracker/layout/UserDefinedLayout.java
@@ -1,4 +1,4 @@
-package me.guillaumin.android.osmtracker.layout;
+package org.osmtracker.layout;
import java.io.File;
import java.io.FileReader;
@@ -6,12 +6,12 @@
import java.util.HashMap;
import java.util.Stack;
-import me.guillaumin.android.osmtracker.OSMTracker;
-import me.guillaumin.android.osmtracker.R;
-import me.guillaumin.android.osmtracker.activity.TrackLogger;
-import me.guillaumin.android.osmtracker.service.resources.AppResourceIconResolver;
-import me.guillaumin.android.osmtracker.service.resources.ExternalDirectoryIconResolver;
-import me.guillaumin.android.osmtracker.util.UserDefinedLayoutReader;
+import org.osmtracker.OSMTracker;
+import org.osmtracker.R;
+import org.osmtracker.activity.TrackLogger;
+import org.osmtracker.service.resources.AppResourceIconResolver;
+import org.osmtracker.service.resources.ExternalDirectoryIconResolver;
+import org.osmtracker.util.UserDefinedLayoutReader;
import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserException;
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/listener/PageButtonOnClickListener.java b/app/src/main/java/org/osmtracker/listener/PageButtonOnClickListener.java
similarity index 81%
rename from app/src/main/java/me/guillaumin/android/osmtracker/listener/PageButtonOnClickListener.java
rename to app/src/main/java/org/osmtracker/listener/PageButtonOnClickListener.java
index 0a08a6143..76683ed97 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/listener/PageButtonOnClickListener.java
+++ b/app/src/main/java/org/osmtracker/listener/PageButtonOnClickListener.java
@@ -1,6 +1,6 @@
-package me.guillaumin.android.osmtracker.listener;
+package org.osmtracker.listener;
-import me.guillaumin.android.osmtracker.layout.UserDefinedLayout;
+import org.osmtracker.layout.UserDefinedLayout;
import android.view.View;
import android.view.View.OnClickListener;
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/listener/SensorListener.java b/app/src/main/java/org/osmtracker/listener/SensorListener.java
similarity index 97%
rename from app/src/main/java/me/guillaumin/android/osmtracker/listener/SensorListener.java
rename to app/src/main/java/org/osmtracker/listener/SensorListener.java
index 74082e1cd..018225554 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/listener/SensorListener.java
+++ b/app/src/main/java/org/osmtracker/listener/SensorListener.java
@@ -1,10 +1,9 @@
-package me.guillaumin.android.osmtracker.listener;
+package org.osmtracker.listener;
import java.text.DecimalFormat;
-import me.guillaumin.android.osmtracker.R;
-import me.guillaumin.android.osmtracker.activity.TrackLogger;
-import me.guillaumin.android.osmtracker.db.DataHelper;
+import org.osmtracker.R;
+import org.osmtracker.db.DataHelper;
import android.app.Activity;
import android.content.Context;
import android.graphics.Color;
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/listener/StillImageOnClickListener.java b/app/src/main/java/org/osmtracker/listener/StillImageOnClickListener.java
similarity index 79%
rename from app/src/main/java/me/guillaumin/android/osmtracker/listener/StillImageOnClickListener.java
rename to app/src/main/java/org/osmtracker/listener/StillImageOnClickListener.java
index dbba27bff..77817b973 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/listener/StillImageOnClickListener.java
+++ b/app/src/main/java/org/osmtracker/listener/StillImageOnClickListener.java
@@ -1,6 +1,6 @@
-package me.guillaumin.android.osmtracker.listener;
+package org.osmtracker.listener;
-import me.guillaumin.android.osmtracker.activity.TrackLogger;
+import org.osmtracker.activity.TrackLogger;
import android.view.View;
import android.view.View.OnClickListener;
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/listener/TagButtonOnClickListener.java b/app/src/main/java/org/osmtracker/listener/TagButtonOnClickListener.java
similarity index 77%
rename from app/src/main/java/me/guillaumin/android/osmtracker/listener/TagButtonOnClickListener.java
rename to app/src/main/java/org/osmtracker/listener/TagButtonOnClickListener.java
index 46d9502c5..d2b6e2bee 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/listener/TagButtonOnClickListener.java
+++ b/app/src/main/java/org/osmtracker/listener/TagButtonOnClickListener.java
@@ -1,14 +1,16 @@
-package me.guillaumin.android.osmtracker.listener;
+package org.osmtracker.listener;
+
+import org.osmtracker.OSMTracker;
+import org.osmtracker.R;
-import me.guillaumin.android.osmtracker.OSMTracker;
-import me.guillaumin.android.osmtracker.R;
-import me.guillaumin.android.osmtracker.db.TrackContentProvider.Schema;
import android.content.Intent;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast;
+import org.osmtracker.db.TrackContentProvider;
+
/**
* Listener for standard waypoint tag button.
* Sends an Intent to track waypoint. Waypoint name is the
@@ -32,7 +34,7 @@ public void onClick(View view) {
// Send an intent to inform service to track the waypoint.
Intent intent = new Intent(OSMTracker.INTENT_TRACK_WP);
- intent.putExtra(Schema.COL_TRACK_ID, currentTrackId);
+ intent.putExtra(TrackContentProvider.Schema.COL_TRACK_ID, currentTrackId);
intent.putExtra(OSMTracker.INTENT_KEY_NAME, label);
view.getContext().sendBroadcast(intent);
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/listener/TextNoteOnClickListener.java b/app/src/main/java/org/osmtracker/listener/TextNoteOnClickListener.java
similarity index 77%
rename from app/src/main/java/me/guillaumin/android/osmtracker/listener/TextNoteOnClickListener.java
rename to app/src/main/java/org/osmtracker/listener/TextNoteOnClickListener.java
index 439826b64..5edb92ec3 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/listener/TextNoteOnClickListener.java
+++ b/app/src/main/java/org/osmtracker/listener/TextNoteOnClickListener.java
@@ -1,6 +1,7 @@
-package me.guillaumin.android.osmtracker.listener;
+package org.osmtracker.listener;
+
+import org.osmtracker.activity.TrackLogger;
-import me.guillaumin.android.osmtracker.activity.TrackLogger;
import android.view.View;
import android.view.View.OnClickListener;
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/listener/VoiceRecOnClickListener.java b/app/src/main/java/org/osmtracker/listener/VoiceRecOnClickListener.java
similarity index 79%
rename from app/src/main/java/me/guillaumin/android/osmtracker/listener/VoiceRecOnClickListener.java
rename to app/src/main/java/org/osmtracker/listener/VoiceRecOnClickListener.java
index 47d5cae61..6ea697f55 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/listener/VoiceRecOnClickListener.java
+++ b/app/src/main/java/org/osmtracker/listener/VoiceRecOnClickListener.java
@@ -1,6 +1,7 @@
-package me.guillaumin.android.osmtracker.listener;
+package org.osmtracker.listener;
+
+import org.osmtracker.activity.TrackLogger;
-import me.guillaumin.android.osmtracker.activity.TrackLogger;
import android.view.View;
import android.view.View.OnClickListener;
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/osm/OpenStreetMapConstants.java b/app/src/main/java/org/osmtracker/osm/OpenStreetMapConstants.java
similarity index 97%
rename from app/src/main/java/me/guillaumin/android/osmtracker/osm/OpenStreetMapConstants.java
rename to app/src/main/java/org/osmtracker/osm/OpenStreetMapConstants.java
index e8b3eba3d..2ef8484fb 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/osm/OpenStreetMapConstants.java
+++ b/app/src/main/java/org/osmtracker/osm/OpenStreetMapConstants.java
@@ -1,4 +1,4 @@
-package me.guillaumin.android.osmtracker.osm;
+package org.osmtracker.osm;
public class OpenStreetMapConstants {
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/osm/ProgressMultipartEntity.java b/app/src/main/java/org/osmtracker/osm/ProgressMultipartEntity.java
similarity index 96%
rename from app/src/main/java/me/guillaumin/android/osmtracker/osm/ProgressMultipartEntity.java
rename to app/src/main/java/org/osmtracker/osm/ProgressMultipartEntity.java
index 24835d267..2effea1bf 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/osm/ProgressMultipartEntity.java
+++ b/app/src/main/java/org/osmtracker/osm/ProgressMultipartEntity.java
@@ -1,4 +1,4 @@
-package me.guillaumin.android.osmtracker.osm;
+package org.osmtracker.osm;
import java.io.FilterOutputStream;
import java.io.IOException;
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/osm/RetrieveAccessTokenTask.java b/app/src/main/java/org/osmtracker/osm/RetrieveAccessTokenTask.java
similarity index 89%
rename from app/src/main/java/me/guillaumin/android/osmtracker/osm/RetrieveAccessTokenTask.java
rename to app/src/main/java/org/osmtracker/osm/RetrieveAccessTokenTask.java
index 6d55a4e29..8d2826044 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/osm/RetrieveAccessTokenTask.java
+++ b/app/src/main/java/org/osmtracker/osm/RetrieveAccessTokenTask.java
@@ -1,9 +1,10 @@
-package me.guillaumin.android.osmtracker.osm;
+package org.osmtracker.osm;
+
+import org.osmtracker.OSMTracker;
+import org.osmtracker.R;
+import org.osmtracker.activity.OpenStreetMapUpload;
+import org.osmtracker.util.DialogUtils;
-import me.guillaumin.android.osmtracker.OSMTracker;
-import me.guillaumin.android.osmtracker.R;
-import me.guillaumin.android.osmtracker.activity.OpenStreetMapUpload;
-import me.guillaumin.android.osmtracker.util.DialogUtils;
import oauth.signpost.commonshttp.CommonsHttpOAuthConsumer;
import oauth.signpost.commonshttp.CommonsHttpOAuthProvider;
import oauth.signpost.exception.OAuthException;
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/osm/RetrieveRequestTokenTask.java b/app/src/main/java/org/osmtracker/osm/RetrieveRequestTokenTask.java
similarity index 92%
rename from app/src/main/java/me/guillaumin/android/osmtracker/osm/RetrieveRequestTokenTask.java
rename to app/src/main/java/org/osmtracker/osm/RetrieveRequestTokenTask.java
index 05f378818..b58a5681c 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/osm/RetrieveRequestTokenTask.java
+++ b/app/src/main/java/org/osmtracker/osm/RetrieveRequestTokenTask.java
@@ -1,7 +1,8 @@
-package me.guillaumin.android.osmtracker.osm;
+package org.osmtracker.osm;
+
+import org.osmtracker.R;
+import org.osmtracker.util.DialogUtils;
-import me.guillaumin.android.osmtracker.R;
-import me.guillaumin.android.osmtracker.util.DialogUtils;
import oauth.signpost.commonshttp.CommonsHttpOAuthConsumer;
import oauth.signpost.commonshttp.CommonsHttpOAuthProvider;
import oauth.signpost.exception.OAuthException;
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/osm/UploadToOpenStreetMapTask.java b/app/src/main/java/org/osmtracker/osm/UploadToOpenStreetMapTask.java
similarity index 92%
rename from app/src/main/java/me/guillaumin/android/osmtracker/osm/UploadToOpenStreetMapTask.java
rename to app/src/main/java/org/osmtracker/osm/UploadToOpenStreetMapTask.java
index e7e4eb23f..be9e8d43b 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/osm/UploadToOpenStreetMapTask.java
+++ b/app/src/main/java/org/osmtracker/osm/UploadToOpenStreetMapTask.java
@@ -1,4 +1,4 @@
-package me.guillaumin.android.osmtracker.osm;
+package org.osmtracker.osm;
import java.io.BufferedInputStream;
import java.io.BufferedReader;
@@ -7,12 +7,11 @@
import java.io.InputStreamReader;
import java.nio.charset.Charset;
-import me.guillaumin.android.osmtracker.OSMTracker;
-import me.guillaumin.android.osmtracker.R;
-import me.guillaumin.android.osmtracker.db.DataHelper;
-import me.guillaumin.android.osmtracker.db.model.Track.OSMVisibility;
-import me.guillaumin.android.osmtracker.osm.ProgressMultipartEntity.ProgressListener;
-import me.guillaumin.android.osmtracker.util.DialogUtils;
+import org.osmtracker.OSMTracker;
+import org.osmtracker.R;
+import org.osmtracker.db.DataHelper;
+import org.osmtracker.util.DialogUtils;
+
import oauth.signpost.commonshttp.CommonsHttpOAuthConsumer;
import org.apache.http.HttpResponse;
@@ -23,6 +22,7 @@
import org.apache.http.entity.mime.content.FileBody;
import org.apache.http.entity.mime.content.StringBody;
import org.apache.http.impl.client.DefaultHttpClient;
+import org.osmtracker.db.model.Track;
import android.app.Activity;
import android.app.AlertDialog;
@@ -66,7 +66,7 @@ public class UploadToOpenStreetMapTask extends AsyncTask {
private final String tags;
/** Track visibility */
- private final OSMVisibility visibility;
+ private final Track.OSMVisibility visibility;
/**
* Error message, or text of the response returned by OSM
@@ -85,7 +85,7 @@ public class UploadToOpenStreetMapTask extends AsyncTask {
public UploadToOpenStreetMapTask(Activity activity,
long trackId, CommonsHttpOAuthConsumer oAuthConsumer,
File gpxFile, String filename,
- String description, String tags, OSMVisibility visibility) {
+ String description, String tags, Track.OSMVisibility visibility) {
this.activity = activity;
this.trackId = trackId;
this.filename = filename;
@@ -94,7 +94,7 @@ public UploadToOpenStreetMapTask(Activity activity,
this.gpxFile = gpxFile;
this.description = (description == null) ? "test" : description;
this.tags = (tags == null) ? "test" : tags;
- this.visibility = (visibility == null) ? OSMVisibility.Private : visibility;
+ this.visibility = (visibility == null) ? Track.OSMVisibility.Private : visibility;
}
@Override
@@ -110,7 +110,7 @@ protected void onPreExecute() {
MultipartEntity entity = new ProgressMultipartEntity(
HttpMultipartMode.BROWSER_COMPATIBLE,
Charset.defaultCharset(),
- new ProgressListener() {
+ new ProgressMultipartEntity.ProgressListener() {
@Override
public void transferred(long num) {
dialog.incrementProgressBy((int) num);
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/overlay/WayPointsOverlay.java b/app/src/main/java/org/osmtracker/overlay/WayPointsOverlay.java
similarity index 80%
rename from app/src/main/java/me/guillaumin/android/osmtracker/overlay/WayPointsOverlay.java
rename to app/src/main/java/org/osmtracker/overlay/WayPointsOverlay.java
index dc520aa19..56ba15a90 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/overlay/WayPointsOverlay.java
+++ b/app/src/main/java/org/osmtracker/overlay/WayPointsOverlay.java
@@ -1,11 +1,10 @@
-package me.guillaumin.android.osmtracker.overlay;
+package org.osmtracker.overlay;
import java.util.ArrayList;
import java.util.List;
-import me.guillaumin.android.osmtracker.R;
-import me.guillaumin.android.osmtracker.db.TrackContentProvider;
-import me.guillaumin.android.osmtracker.db.TrackContentProvider.Schema;
+import org.osmtracker.R;
+import org.osmtracker.db.TrackContentProvider;
import org.osmdroid.api.IMapView;
import org.osmdroid.util.GeoPoint;
@@ -75,11 +74,11 @@ public void refresh() {
for(c.moveToFirst(); !c.isAfterLast(); c.moveToNext()) {
OverlayItem i = new OverlayItem(
- c.getString(c.getColumnIndex(Schema.COL_NAME)),
- c.getString(c.getColumnIndex(Schema.COL_NAME)),
+ c.getString(c.getColumnIndex(TrackContentProvider.Schema.COL_NAME)),
+ c.getString(c.getColumnIndex(TrackContentProvider.Schema.COL_NAME)),
new GeoPoint(
- c.getDouble(c.getColumnIndex(Schema.COL_LATITUDE)),
- c.getDouble(c.getColumnIndex(Schema.COL_LONGITUDE)))
+ c.getDouble(c.getColumnIndex(TrackContentProvider.Schema.COL_LATITUDE)),
+ c.getDouble(c.getColumnIndex(TrackContentProvider.Schema.COL_LONGITUDE)))
);
wayPointItems.add(i);
}
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/receiver/MediaButtonReceiver.java b/app/src/main/java/org/osmtracker/receiver/MediaButtonReceiver.java
similarity index 80%
rename from app/src/main/java/me/guillaumin/android/osmtracker/receiver/MediaButtonReceiver.java
rename to app/src/main/java/org/osmtracker/receiver/MediaButtonReceiver.java
index dd87a2d6f..d5826b547 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/receiver/MediaButtonReceiver.java
+++ b/app/src/main/java/org/osmtracker/receiver/MediaButtonReceiver.java
@@ -1,6 +1,7 @@
-package me.guillaumin.android.osmtracker.receiver;
+package org.osmtracker.receiver;
+
+import org.osmtracker.activity.TrackLogger;
-import me.guillaumin.android.osmtracker.activity.TrackLogger;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/service/gps/GPSLogger.java b/app/src/main/java/org/osmtracker/service/gps/GPSLogger.java
similarity index 93%
rename from app/src/main/java/me/guillaumin/android/osmtracker/service/gps/GPSLogger.java
rename to app/src/main/java/org/osmtracker/service/gps/GPSLogger.java
index e1c621e3f..8a8507fee 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/service/gps/GPSLogger.java
+++ b/app/src/main/java/org/osmtracker/service/gps/GPSLogger.java
@@ -1,12 +1,12 @@
-package me.guillaumin.android.osmtracker.service.gps;
+package org.osmtracker.service.gps;
+
+import org.osmtracker.OSMTracker;
+import org.osmtracker.R;
+import org.osmtracker.activity.TrackLogger;
+import org.osmtracker.db.DataHelper;
+import org.osmtracker.db.TrackContentProvider;
+import org.osmtracker.listener.SensorListener;
-import me.guillaumin.android.osmtracker.OSMTracker;
-import me.guillaumin.android.osmtracker.R;
-import me.guillaumin.android.osmtracker.activity.TrackLogger;
-import me.guillaumin.android.osmtracker.db.DataHelper;
-import me.guillaumin.android.osmtracker.db.TrackContentProvider;
-import me.guillaumin.android.osmtracker.db.TrackContentProvider.Schema;
-import me.guillaumin.android.osmtracker.listener.SensorListener;
import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
@@ -89,7 +89,7 @@ public class GPSLogger extends Service implements LocationListener {
/**
* sensors for magnetic orientation
*/
- private SensorListener sensorListener = new SensorListener();
+ private SensorListener sensorListener = new SensorListener();
/**
* Receives Intent for way point tracking, and stop/start logging.
@@ -108,7 +108,7 @@ public void onReceive(Context context, Intent intent) {
// so we'll request the last known location from the gps provider
lastLocation = lmgr.getLastKnownLocation(LocationManager.GPS_PROVIDER);
if(lastLocation != null){
- Long trackId = extras.getLong(Schema.COL_TRACK_ID);
+ Long trackId = extras.getLong(TrackContentProvider.Schema.COL_TRACK_ID);
String uuid = extras.getString(OSMTracker.INTENT_KEY_UUID);
String name = extras.getString(OSMTracker.INTENT_KEY_NAME);
String link = extras.getString(OSMTracker.INTENT_KEY_LINK);
@@ -120,7 +120,7 @@ public void onReceive(Context context, Intent intent) {
// Update an existing waypoint
Bundle extras = intent.getExtras();
if (extras != null) {
- Long trackId = extras.getLong(Schema.COL_TRACK_ID);
+ Long trackId = extras.getLong(TrackContentProvider.Schema.COL_TRACK_ID);
String uuid = extras.getString(OSMTracker.INTENT_KEY_UUID);
String name = extras.getString(OSMTracker.INTENT_KEY_NAME);
String link = extras.getString(OSMTracker.INTENT_KEY_LINK);
@@ -136,7 +136,7 @@ public void onReceive(Context context, Intent intent) {
} else if (OSMTracker.INTENT_START_TRACKING.equals(intent.getAction()) ) {
Bundle extras = intent.getExtras();
if (extras != null) {
- Long trackId = extras.getLong(Schema.COL_TRACK_ID);
+ Long trackId = extras.getLong(TrackContentProvider.Schema.COL_TRACK_ID);
startTracking(trackId);
}
} else if (OSMTracker.INTENT_STOP_TRACKING.equals(intent.getAction()) ) {
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/service/gps/GPSLoggerServiceConnection.java b/app/src/main/java/org/osmtracker/service/gps/GPSLoggerServiceConnection.java
similarity index 75%
rename from app/src/main/java/me/guillaumin/android/osmtracker/service/gps/GPSLoggerServiceConnection.java
rename to app/src/main/java/org/osmtracker/service/gps/GPSLoggerServiceConnection.java
index dbd50a681..ab4c5f2fd 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/service/gps/GPSLoggerServiceConnection.java
+++ b/app/src/main/java/org/osmtracker/service/gps/GPSLoggerServiceConnection.java
@@ -1,14 +1,16 @@
-package me.guillaumin.android.osmtracker.service.gps;
+package org.osmtracker.service.gps;
+
+import org.osmtracker.OSMTracker;
+import org.osmtracker.R;
+import org.osmtracker.activity.TrackLogger;
+import org.osmtracker.layout.GpsStatusRecord;
+import org.osmtracker.db.TrackContentProvider;
-import me.guillaumin.android.osmtracker.OSMTracker;
-import me.guillaumin.android.osmtracker.R;
-import me.guillaumin.android.osmtracker.activity.TrackLogger;
-import me.guillaumin.android.osmtracker.db.TrackContentProvider.Schema;
-import me.guillaumin.android.osmtracker.layout.GpsStatusRecord;
import android.content.ComponentName;
import android.content.Intent;
import android.content.ServiceConnection;
import android.os.IBinder;
+
/**
* Handles the bind to the GPS Logger service
*
@@ -47,7 +49,7 @@ public void onServiceConnected(ComponentName name, IBinder service) {
if (!activity.getGpsLogger().isTracking()) {
activity.setEnabledActionButtons(false);
Intent intent = new Intent(OSMTracker.INTENT_START_TRACKING);
- intent.putExtra(Schema.COL_TRACK_ID, activity.getCurrentTrackId());
+ intent.putExtra(TrackContentProvider.Schema.COL_TRACK_ID, activity.getCurrentTrackId());
activity.sendBroadcast(intent);
}
}
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/service/resources/AppResourceIconResolver.java b/app/src/main/java/org/osmtracker/service/resources/AppResourceIconResolver.java
similarity index 89%
rename from app/src/main/java/me/guillaumin/android/osmtracker/service/resources/AppResourceIconResolver.java
rename to app/src/main/java/org/osmtracker/service/resources/AppResourceIconResolver.java
index eb45718c3..39277acfb 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/service/resources/AppResourceIconResolver.java
+++ b/app/src/main/java/org/osmtracker/service/resources/AppResourceIconResolver.java
@@ -1,4 +1,4 @@
-package me.guillaumin.android.osmtracker.service.resources;
+package org.osmtracker.service.resources;
import android.content.res.Resources;
import android.graphics.drawable.Drawable;
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/service/resources/ExternalDirectoryIconResolver.java b/app/src/main/java/org/osmtracker/service/resources/ExternalDirectoryIconResolver.java
similarity index 91%
rename from app/src/main/java/me/guillaumin/android/osmtracker/service/resources/ExternalDirectoryIconResolver.java
rename to app/src/main/java/org/osmtracker/service/resources/ExternalDirectoryIconResolver.java
index 55b4fe82a..ee358ddec 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/service/resources/ExternalDirectoryIconResolver.java
+++ b/app/src/main/java/org/osmtracker/service/resources/ExternalDirectoryIconResolver.java
@@ -1,4 +1,4 @@
-package me.guillaumin.android.osmtracker.service.resources;
+package org.osmtracker.service.resources;
import java.io.File;
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/service/resources/IconResolver.java b/app/src/main/java/org/osmtracker/service/resources/IconResolver.java
similarity index 78%
rename from app/src/main/java/me/guillaumin/android/osmtracker/service/resources/IconResolver.java
rename to app/src/main/java/org/osmtracker/service/resources/IconResolver.java
index c6bb11eaf..a1a919baf 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/service/resources/IconResolver.java
+++ b/app/src/main/java/org/osmtracker/service/resources/IconResolver.java
@@ -1,4 +1,4 @@
-package me.guillaumin.android.osmtracker.service.resources;
+package org.osmtracker.service.resources;
import android.graphics.drawable.Drawable;
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/util/ArrayUtils.java b/app/src/main/java/org/osmtracker/util/ArrayUtils.java
similarity index 90%
rename from app/src/main/java/me/guillaumin/android/osmtracker/util/ArrayUtils.java
rename to app/src/main/java/org/osmtracker/util/ArrayUtils.java
index eda4ccc5b..92ed03a46 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/util/ArrayUtils.java
+++ b/app/src/main/java/org/osmtracker/util/ArrayUtils.java
@@ -1,4 +1,4 @@
-package me.guillaumin.android.osmtracker.util;
+package org.osmtracker.util;
/**
* Array utilities.
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/util/DialogUtils.java b/app/src/main/java/org/osmtracker/util/DialogUtils.java
similarity index 93%
rename from app/src/main/java/me/guillaumin/android/osmtracker/util/DialogUtils.java
rename to app/src/main/java/org/osmtracker/util/DialogUtils.java
index 903444028..d396bc368 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/util/DialogUtils.java
+++ b/app/src/main/java/org/osmtracker/util/DialogUtils.java
@@ -1,4 +1,4 @@
-package me.guillaumin.android.osmtracker.util;
+package org.osmtracker.util;
import android.app.AlertDialog;
import android.content.Context;
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/util/FileSystemUtils.java b/app/src/main/java/org/osmtracker/util/FileSystemUtils.java
similarity index 99%
rename from app/src/main/java/me/guillaumin/android/osmtracker/util/FileSystemUtils.java
rename to app/src/main/java/org/osmtracker/util/FileSystemUtils.java
index 374d1fa11..6050d0bf5 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/util/FileSystemUtils.java
+++ b/app/src/main/java/org/osmtracker/util/FileSystemUtils.java
@@ -1,4 +1,4 @@
-package me.guillaumin.android.osmtracker.util;
+package org.osmtracker.util;
import java.io.File;
import java.io.FileInputStream;
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/util/MercatorProjection.java b/app/src/main/java/org/osmtracker/util/MercatorProjection.java
similarity index 94%
rename from app/src/main/java/me/guillaumin/android/osmtracker/util/MercatorProjection.java
rename to app/src/main/java/org/osmtracker/util/MercatorProjection.java
index 2ebc790f0..55f131433 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/util/MercatorProjection.java
+++ b/app/src/main/java/org/osmtracker/util/MercatorProjection.java
@@ -1,4 +1,4 @@
-package me.guillaumin.android.osmtracker.util;
+package org.osmtracker.util;
/**
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/util/ThemeValidator.java b/app/src/main/java/org/osmtracker/util/ThemeValidator.java
similarity index 88%
rename from app/src/main/java/me/guillaumin/android/osmtracker/util/ThemeValidator.java
rename to app/src/main/java/org/osmtracker/util/ThemeValidator.java
index 6f0f7a10d..090e0c466 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/util/ThemeValidator.java
+++ b/app/src/main/java/org/osmtracker/util/ThemeValidator.java
@@ -1,9 +1,10 @@
-package me.guillaumin.android.osmtracker.util;
+package org.osmtracker.util;
import java.util.Arrays;
-import me.guillaumin.android.osmtracker.OSMTracker;
-import me.guillaumin.android.osmtracker.R;
+import org.osmtracker.OSMTracker;
+import org.osmtracker.R;
+
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.content.res.Resources;
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/util/UserDefinedLayoutReader.java b/app/src/main/java/org/osmtracker/util/UserDefinedLayoutReader.java
similarity index 93%
rename from app/src/main/java/me/guillaumin/android/osmtracker/util/UserDefinedLayoutReader.java
rename to app/src/main/java/org/osmtracker/util/UserDefinedLayoutReader.java
index b616b9378..73b643719 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/util/UserDefinedLayoutReader.java
+++ b/app/src/main/java/org/osmtracker/util/UserDefinedLayoutReader.java
@@ -1,19 +1,19 @@
-package me.guillaumin.android.osmtracker.util;
+package org.osmtracker.util;
import java.io.IOException;
import java.util.HashMap;
-import me.guillaumin.android.osmtracker.OSMTracker;
-import me.guillaumin.android.osmtracker.R;
-import me.guillaumin.android.osmtracker.activity.TrackLogger;
-import me.guillaumin.android.osmtracker.layout.DisablableTableLayout;
-import me.guillaumin.android.osmtracker.layout.UserDefinedLayout;
-import me.guillaumin.android.osmtracker.listener.PageButtonOnClickListener;
-import me.guillaumin.android.osmtracker.listener.StillImageOnClickListener;
-import me.guillaumin.android.osmtracker.listener.TagButtonOnClickListener;
-import me.guillaumin.android.osmtracker.listener.TextNoteOnClickListener;
-import me.guillaumin.android.osmtracker.listener.VoiceRecOnClickListener;
-import me.guillaumin.android.osmtracker.service.resources.IconResolver;
+import org.osmtracker.OSMTracker;
+import org.osmtracker.R;
+import org.osmtracker.activity.TrackLogger;
+import org.osmtracker.layout.DisablableTableLayout;
+import org.osmtracker.layout.UserDefinedLayout;
+import org.osmtracker.listener.PageButtonOnClickListener;
+import org.osmtracker.listener.StillImageOnClickListener;
+import org.osmtracker.listener.TagButtonOnClickListener;
+import org.osmtracker.listener.TextNoteOnClickListener;
+import org.osmtracker.listener.VoiceRecOnClickListener;
+import org.osmtracker.service.resources.IconResolver;
import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserException;
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/view/DisplayTrackView.java b/app/src/main/java/org/osmtracker/view/DisplayTrackView.java
similarity index 91%
rename from app/src/main/java/me/guillaumin/android/osmtracker/view/DisplayTrackView.java
rename to app/src/main/java/org/osmtracker/view/DisplayTrackView.java
index f96cb93d4..638472f43 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/view/DisplayTrackView.java
+++ b/app/src/main/java/org/osmtracker/view/DisplayTrackView.java
@@ -1,12 +1,12 @@
-package me.guillaumin.android.osmtracker.view;
+package org.osmtracker.view;
import java.text.DecimalFormat;
-import me.guillaumin.android.osmtracker.R;
-import me.guillaumin.android.osmtracker.db.TrackContentProvider;
-import me.guillaumin.android.osmtracker.db.TrackContentProvider.Schema;
-import me.guillaumin.android.osmtracker.util.ArrayUtils;
-import me.guillaumin.android.osmtracker.util.MercatorProjection;
+import org.osmtracker.R;
+import org.osmtracker.db.TrackContentProvider;
+import org.osmtracker.util.ArrayUtils;
+import org.osmtracker.util.MercatorProjection;
+
import android.content.Context;
import android.database.ContentObserver;
import android.database.Cursor;
@@ -267,8 +267,8 @@ public void populateCoords() {
int i=0;
for(c.moveToFirst(); !c.isAfterLast(); c.moveToNext(), i++) {
- coords[i][MercatorProjection.LONGITUDE] = c.getDouble(c.getColumnIndex(Schema.COL_LONGITUDE));
- coords[i][MercatorProjection.LATITUDE] = c.getDouble(c.getColumnIndex(Schema.COL_LATITUDE));
+ coords[i][MercatorProjection.LONGITUDE] = c.getDouble(c.getColumnIndex(TrackContentProvider.Schema.COL_LONGITUDE));
+ coords[i][MercatorProjection.LATITUDE] = c.getDouble(c.getColumnIndex(TrackContentProvider.Schema.COL_LATITUDE));
}
c.close();
@@ -280,8 +280,8 @@ public void populateCoords() {
wayPointsCoords = new double[c.getCount()][2];
for(c.moveToFirst(), i=0; !c.isAfterLast(); c.moveToNext(), i++) {
- wayPointsCoords[i][MercatorProjection.LONGITUDE] = c.getDouble(c.getColumnIndex(Schema.COL_LONGITUDE));
- wayPointsCoords[i][MercatorProjection.LATITUDE] = c.getDouble(c.getColumnIndex(Schema.COL_LATITUDE));
+ wayPointsCoords[i][MercatorProjection.LONGITUDE] = c.getDouble(c.getColumnIndex(TrackContentProvider.Schema.COL_LONGITUDE));
+ wayPointsCoords[i][MercatorProjection.LATITUDE] = c.getDouble(c.getColumnIndex(TrackContentProvider.Schema.COL_LATITUDE));
}
c.close();
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/view/TextNoteDialog.java b/app/src/main/java/org/osmtracker/view/TextNoteDialog.java
similarity index 92%
rename from app/src/main/java/me/guillaumin/android/osmtracker/view/TextNoteDialog.java
rename to app/src/main/java/org/osmtracker/view/TextNoteDialog.java
index 245671d9c..781234fef 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/view/TextNoteDialog.java
+++ b/app/src/main/java/org/osmtracker/view/TextNoteDialog.java
@@ -1,10 +1,10 @@
-package me.guillaumin.android.osmtracker.view;
+package org.osmtracker.view;
import java.util.UUID;
-import me.guillaumin.android.osmtracker.OSMTracker;
-import me.guillaumin.android.osmtracker.R;
-import me.guillaumin.android.osmtracker.db.TrackContentProvider.Schema;
+import org.osmtracker.OSMTracker;
+import org.osmtracker.R;
+
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
@@ -12,6 +12,8 @@
import android.os.Bundle;
import android.widget.EditText;
+import org.osmtracker.db.TrackContentProvider;
+
public class TextNoteDialog extends AlertDialog {
/**
@@ -65,7 +67,7 @@ public TextNoteDialog(Context context, long trackId) {
public void onClick(DialogInterface dialog, int which) {
// Track waypoint with user input text
Intent intent = new Intent(OSMTracker.INTENT_UPDATE_WP);
- intent.putExtra(Schema.COL_TRACK_ID, TextNoteDialog.this.wayPointTrackId);
+ intent.putExtra(TrackContentProvider.Schema.COL_TRACK_ID, TextNoteDialog.this.wayPointTrackId);
intent.putExtra(OSMTracker.INTENT_KEY_NAME, input.getText().toString());
intent.putExtra(OSMTracker.INTENT_KEY_UUID, TextNoteDialog.this.wayPointUuid);
TextNoteDialog.this.context.sendBroadcast(intent);
@@ -102,7 +104,7 @@ protected void onStart() {
// so we need to generate a UUID and track this point
wayPointUuid = UUID.randomUUID().toString();
Intent intent = new Intent(OSMTracker.INTENT_TRACK_WP);
- intent.putExtra(Schema.COL_TRACK_ID, wayPointTrackId);
+ intent.putExtra(TrackContentProvider.Schema.COL_TRACK_ID, wayPointTrackId);
intent.putExtra(OSMTracker.INTENT_KEY_UUID, wayPointUuid);
intent.putExtra(OSMTracker.INTENT_KEY_NAME, context.getResources().getString(R.string.gpsstatus_record_textnote));
context.sendBroadcast(intent);
diff --git a/app/src/main/java/me/guillaumin/android/osmtracker/view/VoiceRecDialog.java b/app/src/main/java/org/osmtracker/view/VoiceRecDialog.java
similarity index 97%
rename from app/src/main/java/me/guillaumin/android/osmtracker/view/VoiceRecDialog.java
rename to app/src/main/java/org/osmtracker/view/VoiceRecDialog.java
index ace8ed760..5f39f8447 100644
--- a/app/src/main/java/me/guillaumin/android/osmtracker/view/VoiceRecDialog.java
+++ b/app/src/main/java/org/osmtracker/view/VoiceRecDialog.java
@@ -1,13 +1,14 @@
-package me.guillaumin.android.osmtracker.view;
+package org.osmtracker.view;
import java.io.File;
import java.util.Date;
import java.util.UUID;
-import me.guillaumin.android.osmtracker.OSMTracker;
-import me.guillaumin.android.osmtracker.R;
-import me.guillaumin.android.osmtracker.db.DataHelper;
-import me.guillaumin.android.osmtracker.db.TrackContentProvider.Schema;
+import org.osmtracker.OSMTracker;
+import org.osmtracker.R;
+import org.osmtracker.db.DataHelper;
+import org.osmtracker.db.TrackContentProvider.Schema;
+
import android.app.ProgressDialog;
import android.content.Context;
import android.content.DialogInterface;
diff --git a/app/src/main/res/layout/tracklogger.xml b/app/src/main/res/layout/tracklogger.xml
index 5283f5003..cdf5617f3 100644
--- a/app/src/main/res/layout/tracklogger.xml
+++ b/app/src/main/res/layout/tracklogger.xml
@@ -1,7 +1,7 @@
-
diff --git a/app/src/main/res/values/values-preferences.xml b/app/src/main/res/values/values-preferences.xml
index 8d1498370..961fad984 100644
--- a/app/src/main/res/values/values-preferences.xml
+++ b/app/src/main/res/values/values-preferences.xml
@@ -24,10 +24,10 @@
- - me.guillaumin.android.osmtracker:style/DefaultTheme
- - me.guillaumin.android.osmtracker:style/DarkTheme
- - me.guillaumin.android.osmtracker:style/LightTheme
- - me.guillaumin.android.osmtracker:style/HighContrast
+ - org.osmtracker:style/DefaultTheme
+ - org.osmtracker:style/DarkTheme
+ - org.osmtracker:style/LightTheme
+ - org.osmtracker:style/HighContrast