diff --git a/MyTracks/.classpath b/MyTracks/.classpath
index 82b4be14d..0ca188f97 100644
--- a/MyTracks/.classpath
+++ b/MyTracks/.classpath
@@ -1,22 +1,8 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/MyTracks/libs/README.txt b/MyTracks/libs/README.txt
index 0df5b07bb..20bcb1ded 100644
--- a/MyTracks/libs/README.txt
+++ b/MyTracks/libs/README.txt
@@ -3,10 +3,21 @@ own licenses, which allow their usage for the My Tracks application. Any other
applications that wish to use these files should consult the appropriate
licenses or the JAR's authors.
-google-api-client/
-- see http://code.google.com/p/google-api-java-client/.
-- contains Google API client library, google-api-client-1.5.0-beta.jar, and its
- dependencies.
+Android Support Package:
+android-support-v4.jar
+- see http://developer.android.com/sdk/compatibility-library.html
+
+Google APIs Client Library for Java:
+commons-codec-1.3.jar
+commons-logging-1.1.1.jar
+google-api-client-1.5.0-beta.jar
+google-http-client-1.5.0-beta.jar
+google-oauth-client-1.5.0-beta.jar
+gson-1.6.jar
+guava-r09.jar
+jackson-core-asl-1.6.7.jar
+jsr305-1.3.9.jar
+- see http://code.google.com/p/google-api-java-client/
- google-api-client-1.5.0-beta.jar depends on protobuf-java-2.2.0.jar, however,
MyTracksLib already includes protobuf-java.2.3.0-lite.jar. Thus using the
newer version, protobuf-java.2.3.0-lite.jar.
@@ -14,9 +25,9 @@ google-api-client/
some of its classes are already included in the android framework, thus not
including xpp3-1.1.4c.jar.
-google-common.jar
-
-googleloginclient-helper.jar
-
+Google Analytics:
libGoogleAnalytics.jar
-- see http://code.google.com/mobile/analytics/docs/.
+- see http://code.google.com/apis/analytics/docs/mobile/android.html
+
+Others:
+google-common.jar
\ No newline at end of file
diff --git a/MyTracks/libs/google-api-client/commons-codec-1.3.jar b/MyTracks/libs/commons-codec-1.3.jar
similarity index 100%
rename from MyTracks/libs/google-api-client/commons-codec-1.3.jar
rename to MyTracks/libs/commons-codec-1.3.jar
diff --git a/MyTracks/libs/google-api-client/commons-logging-1.1.1.jar b/MyTracks/libs/commons-logging-1.1.1.jar
similarity index 100%
rename from MyTracks/libs/google-api-client/commons-logging-1.1.1.jar
rename to MyTracks/libs/commons-logging-1.1.1.jar
diff --git a/MyTracks/libs/google-api-client/google-api-client-1.5.0-beta.jar b/MyTracks/libs/google-api-client-1.5.0-beta.jar
similarity index 100%
rename from MyTracks/libs/google-api-client/google-api-client-1.5.0-beta.jar
rename to MyTracks/libs/google-api-client-1.5.0-beta.jar
diff --git a/MyTracks/libs/google-api-client/google-http-client-1.5.0-beta.jar b/MyTracks/libs/google-http-client-1.5.0-beta.jar
similarity index 100%
rename from MyTracks/libs/google-api-client/google-http-client-1.5.0-beta.jar
rename to MyTracks/libs/google-http-client-1.5.0-beta.jar
diff --git a/MyTracks/libs/google-api-client/google-oauth-client-1.5.0-beta.jar b/MyTracks/libs/google-oauth-client-1.5.0-beta.jar
similarity index 100%
rename from MyTracks/libs/google-api-client/google-oauth-client-1.5.0-beta.jar
rename to MyTracks/libs/google-oauth-client-1.5.0-beta.jar
diff --git a/MyTracks/libs/googleloginclient-helper.jar b/MyTracks/libs/googleloginclient-helper.jar
deleted file mode 100644
index 6e610e991..000000000
Binary files a/MyTracks/libs/googleloginclient-helper.jar and /dev/null differ
diff --git a/MyTracks/libs/google-api-client/gson-1.6.jar b/MyTracks/libs/gson-1.6.jar
similarity index 100%
rename from MyTracks/libs/google-api-client/gson-1.6.jar
rename to MyTracks/libs/gson-1.6.jar
diff --git a/MyTracks/libs/google-api-client/guava-r09.jar b/MyTracks/libs/guava-r09.jar
similarity index 100%
rename from MyTracks/libs/google-api-client/guava-r09.jar
rename to MyTracks/libs/guava-r09.jar
diff --git a/MyTracks/libs/google-api-client/jackson-core-asl-1.6.7.jar b/MyTracks/libs/jackson-core-asl-1.6.7.jar
similarity index 100%
rename from MyTracks/libs/google-api-client/jackson-core-asl-1.6.7.jar
rename to MyTracks/libs/jackson-core-asl-1.6.7.jar
diff --git a/MyTracks/libs/google-api-client/jsr305-1.3.9.jar b/MyTracks/libs/jsr305-1.3.9.jar
similarity index 100%
rename from MyTracks/libs/google-api-client/jsr305-1.3.9.jar
rename to MyTracks/libs/jsr305-1.3.9.jar
diff --git a/MyTracks/proguard.cfg b/MyTracks/proguard.cfg
index 0be4447b2..c9c6588f2 100644
--- a/MyTracks/proguard.cfg
+++ b/MyTracks/proguard.cfg
@@ -1,44 +1,43 @@
--target 6
--optimizationpasses 5
+#
+# Section 1
+# Default eclipse project proguard settings.
+#
-dontusemixedcaseclassnames
-dontskipnonpubliclibraryclasses
--dontpreverify
-verbose
--optimizations !code/simplification/arithmetic,!field/*,!class/merging/*
-# Add the libraries, but ignore warnings about them
--libraryjars libs
--libraryjars ../MyTracksLib/libs
--dontwarn com.google.android.googleapps.**
--dontwarn com.android.common.**
--dontwarn com.google.android.gsf.**
--dontwarn org.codehaus.**
--dontwarn com.google.appengine.**
--dontwarn org.apache.avalon.framework.logger.**
--dontwarn org.apache.log.**
--dontwarn org.apache.log4j.**
--dontwarn javax.servlet.**
+-dontpreverify
-# Make our stack traces useful
-# Line numbers will be correct, file names will be replaced by "MT" since the
-# class name is enough to get the file name.
--renamesourcefileattribute MT
--keepattributes SourceFile,LineNumberTable
+-optimizations !code/simplification/arithmetic,!code/simplification/cast,!field/*,!class/merging/*
+# change from 5 to 2. With 5 passes, the CursorLoader in the android.support.v4 will not compile.
+# See http://stackoverflow.com/questions/6605971/android-sdk-tools-revision-12-has-problem-with-proguard-error-conversion-to
+-optimizationpasses 2
+-allowaccessmodification
-# Keep everything android references from XMLs
+-keepattributes *Annotation*
-keep public class * extends android.app.Activity
-keep public class * extends android.app.Application
-keep public class * extends android.app.Service
--keep public class * extends android.app.backup.BackupAgent
-keep public class * extends android.content.BroadcastReceiver
-keep public class * extends android.content.ContentProvider
+-keep public class * extends android.app.backup.BackupAgent
-keep public class * extends android.preference.Preference
+-keep public class * extends android.support.v4.app.Fragment
+-keep public class * extends android.app.Fragment
-keep public class com.android.vending.licensing.ILicensingService
--keepclasseswithmembers class * {
+# For native methods, see http://proguard.sourceforge.net/manual/examples.html#native
+-keepclasseswithmembernames class * {
native ;
}
+-keep public class * extends android.view.View {
+ public (android.content.Context);
+ public (android.content.Context, android.util.AttributeSet);
+ public (android.content.Context, android.util.AttributeSet, int);
+ public void set*(...);
+}
+
-keepclasseswithmembers class * {
public (android.content.Context, android.util.AttributeSet);
}
@@ -47,6 +46,11 @@
public (android.content.Context, android.util.AttributeSet, int);
}
+-keepclassmembers class * extends android.app.Activity {
+ public void *(android.view.View);
+}
+
+# For enumeration classes, see http://proguard.sourceforge.net/manual/examples.html#enumerations
-keepclassmembers enum * {
public static **[] values();
public static ** valueOf(java.lang.String);
@@ -56,20 +60,55 @@
public static final android.os.Parcelable$Creator *;
}
-# Needed by google-api-client to keep generic types and @Key annotations accessed via reflection
+-keepclassmembers class **.R$* {
+ public static ;
+}
+# The support library contains references to newer platform versions.
+# Don't warn about those in case this app is linking against an older
+# platform version. We know about them, and they are safe.
+-dontwarn android.support.**
+
+#
+# Section 2
+# Google APIs Client Library for Java proguard settings.
+#
+
+# Needed by google-api-client to keep generic types and @Key annotations accessed via reflection
-keepclassmembers class * {
@com.google.api.client.util.Key ;
}
-
-keepattributes Signature,RuntimeVisibleAnnotations,AnnotationDefault
# Needed by Guava
-
-dontwarn sun.misc.Unsafe
+# See https://groups.google.com/forum/#!topic/guava-discuss/YCZzeCiIVoI
+-dontwarn com.google.common.collect.MinMaxPriorityQueue
+
+#
+# Section 3
+# My Tracks specific proguard settings.
+#
+
+# Add the libraries, but ignore warnings about them
+-libraryjars libs
+-libraryjars ../MyTracksLib/libs
+-dontwarn com.android.common.**
+-dontwarn com.google.android.googleapps.**
+-dontwarn com.google.android.gsf.**
+-dontwarn javax.servlet.**
+-dontwarn org.apache.avalon.framework.logger.**
+-dontwarn org.apache.log.**
+-dontwarn org.apache.log4j.**
+
+# Make our stack traces useful
+# Line numbers will be correct, file names will be replaced by "MT" since the
+# class name is enough to get the file name.
+-renamesourcefileattribute MT
+-keepattributes SourceFile,LineNumberTable
+
# Keep services needed by ANT+ protocol
-keep public class com.dsi.ant.IAnt_6
-keep public class com.dsi.ant.IAnt
-keep public class com.dsi.ant.IServiceSettings
-
diff --git a/MyTracksLib/.classpath b/MyTracksLib/.classpath
index 4aeffd3c3..0ca188f97 100644
--- a/MyTracksLib/.classpath
+++ b/MyTracksLib/.classpath
@@ -3,7 +3,6 @@
-
diff --git a/MyTracksTest/.classpath b/MyTracksTest/.classpath
index a59367532..17b7b5ec6 100644
--- a/MyTracksTest/.classpath
+++ b/MyTracksTest/.classpath
@@ -9,8 +9,6 @@
-
-
diff --git a/MyTracksTest/libs/AndroidMockRuntime.jar b/MyTracksTest/libs/AndroidMockRuntime.jar
deleted file mode 100644
index 40fa9e173..000000000
Binary files a/MyTracksTest/libs/AndroidMockRuntime.jar and /dev/null differ