From 78157487946558cd8ebc750a557894765d55ca63 Mon Sep 17 00:00:00 2001 From: Tobrun Date: Mon, 26 Jun 2017 20:46:09 +0200 Subject: [PATCH] Proguard fix for SharedCode, clean up code, bump dependencies. --- MapboxAndroidDemo/build.gradle | 4 +-- .../mapboxandroiddemo/MainActivity.java | 24 ++++++++--------- .../account/AccountRetrievalService.java | 18 ++++++------- .../account/LandingActivity.java | 14 +++++----- .../utils/SettingsDialogView.java | 20 +++++++------- MapboxAndroidWearDemo/build.gradle | 6 ++--- .../mapboxandroiddemo/MainActivity.java | 4 +-- SharedCode/.gitignore | 1 + SharedCode/build.gradle | 18 ++----------- SharedCode/gradle-config.gradle | 4 +++ SharedCode/proguard-rules.pro | 25 ------------------ .../sharedcode/ExampleInstrumentedTest.java | 26 ------------------- SharedCode/src/main/AndroidManifest.xml | 14 +--------- .../commons}/AnalyticsTracker.java | 17 +++++------- .../commons}/FirstTimeRunChecker.java | 23 ++++------------ .../commons}/StringConstants.java | 2 +- SharedCode/src/main/res/values/strings.xml | 3 --- .../example/sharedcode/ExampleUnitTest.java | 17 ------------ bitrise.yml | 11 ++++++-- whatsnew/whatsnew-en-US | 10 ++++++- 20 files changed, 83 insertions(+), 178 deletions(-) delete mode 100644 SharedCode/proguard-rules.pro delete mode 100644 SharedCode/src/androidTest/java/com/example/sharedcode/ExampleInstrumentedTest.java rename SharedCode/src/main/java/com/{example/sharedcode/analytics => mapbox/mapboxandroiddemo/commons}/AnalyticsTracker.java (94%) rename SharedCode/src/main/java/com/{example/sharedcode/analytics => mapbox/mapboxandroiddemo/commons}/FirstTimeRunChecker.java (55%) rename SharedCode/src/main/java/com/{example/sharedcode/analytics => mapbox/mapboxandroiddemo/commons}/StringConstants.java (93%) delete mode 100644 SharedCode/src/main/res/values/strings.xml delete mode 100644 SharedCode/src/test/java/com/example/sharedcode/ExampleUnitTest.java diff --git a/MapboxAndroidDemo/build.gradle b/MapboxAndroidDemo/build.gradle index 80d9d4490..eb108e726 100644 --- a/MapboxAndroidDemo/build.gradle +++ b/MapboxAndroidDemo/build.gradle @@ -7,7 +7,7 @@ ext { android { compileSdkVersion 25 - buildToolsVersion "25.0.2" + buildToolsVersion "25.0.3" defaultConfig { applicationId "com.mapbox.mapboxandroiddemo" @@ -43,7 +43,7 @@ android { splits { abi { - enable true + enable false universalApk false } } diff --git a/MapboxAndroidDemo/src/main/java/com/mapbox/mapboxandroiddemo/MainActivity.java b/MapboxAndroidDemo/src/main/java/com/mapbox/mapboxandroiddemo/MainActivity.java index 130d30ff1..7ccd271b0 100644 --- a/MapboxAndroidDemo/src/main/java/com/mapbox/mapboxandroiddemo/MainActivity.java +++ b/MapboxAndroidDemo/src/main/java/com/mapbox/mapboxandroiddemo/MainActivity.java @@ -25,10 +25,10 @@ import com.afollestad.materialdialogs.DialogAction; import com.afollestad.materialdialogs.MaterialDialog; -import com.example.sharedcode.analytics.AnalyticsTracker; -import com.example.sharedcode.analytics.FirstTimeRunChecker; import com.github.javiersantos.materialstyleddialogs.MaterialStyledDialog; import com.mapbox.mapboxandroiddemo.adapter.ExampleAdapter; +import com.mapbox.mapboxandroiddemo.commons.AnalyticsTracker; +import com.mapbox.mapboxandroiddemo.commons.FirstTimeRunChecker; import com.mapbox.mapboxandroiddemo.examples.annotations.AnimatedMarkerActivity; import com.mapbox.mapboxandroiddemo.examples.annotations.BasicMarkerViewActivity; import com.mapbox.mapboxandroiddemo.examples.annotations.CustomInfoWindowActivity; @@ -92,16 +92,16 @@ import java.util.ArrayList; -import static com.example.sharedcode.analytics.AnalyticsTracker.CLICKED_ON_INFO_DIALOG_NOT_NOW; -import static com.example.sharedcode.analytics.AnalyticsTracker.CLICKED_ON_INFO_DIALOG_START_LEARNING; -import static com.example.sharedcode.analytics.AnalyticsTracker.CLICKED_ON_INFO_MENU_ITEM; -import static com.example.sharedcode.analytics.AnalyticsTracker.CLICKED_ON_SETTINGS_IN_NAV_DRAWER; -import static com.example.sharedcode.analytics.AnalyticsTracker.OPENED_APP; -import static com.example.sharedcode.analytics.AnalyticsTracker.SKIPPED_ACCOUNT_CREATION; -import static com.example.sharedcode.analytics.StringConstants.AVATAR_IMAGE_KEY; -import static com.example.sharedcode.analytics.StringConstants.SKIPPED_KEY; -import static com.example.sharedcode.analytics.StringConstants.TOKEN_SAVED_KEY; -import static com.example.sharedcode.analytics.StringConstants.USERNAME_KEY; +import static com.mapbox.mapboxandroiddemo.commons.AnalyticsTracker.CLICKED_ON_INFO_DIALOG_NOT_NOW; +import static com.mapbox.mapboxandroiddemo.commons.AnalyticsTracker.CLICKED_ON_INFO_DIALOG_START_LEARNING; +import static com.mapbox.mapboxandroiddemo.commons.AnalyticsTracker.CLICKED_ON_INFO_MENU_ITEM; +import static com.mapbox.mapboxandroiddemo.commons.AnalyticsTracker.CLICKED_ON_SETTINGS_IN_NAV_DRAWER; +import static com.mapbox.mapboxandroiddemo.commons.AnalyticsTracker.OPENED_APP; +import static com.mapbox.mapboxandroiddemo.commons.AnalyticsTracker.SKIPPED_ACCOUNT_CREATION; +import static com.mapbox.mapboxandroiddemo.commons.StringConstants.AVATAR_IMAGE_KEY; +import static com.mapbox.mapboxandroiddemo.commons.StringConstants.SKIPPED_KEY; +import static com.mapbox.mapboxandroiddemo.commons.StringConstants.TOKEN_SAVED_KEY; +import static com.mapbox.mapboxandroiddemo.commons.StringConstants.USERNAME_KEY; public class MainActivity extends AppCompatActivity implements NavigationView.OnNavigationItemSelectedListener { diff --git a/MapboxAndroidDemo/src/main/java/com/mapbox/mapboxandroiddemo/account/AccountRetrievalService.java b/MapboxAndroidDemo/src/main/java/com/mapbox/mapboxandroiddemo/account/AccountRetrievalService.java index 2e0248745..88c282132 100644 --- a/MapboxAndroidDemo/src/main/java/com/mapbox/mapboxandroiddemo/account/AccountRetrievalService.java +++ b/MapboxAndroidDemo/src/main/java/com/mapbox/mapboxandroiddemo/account/AccountRetrievalService.java @@ -8,7 +8,7 @@ import android.util.Base64; import android.util.Log; -import com.example.sharedcode.analytics.AnalyticsTracker; +import com.mapbox.mapboxandroiddemo.commons.AnalyticsTracker; import com.mapbox.mapboxandroiddemo.MainActivity; import com.mapbox.mapboxandroiddemo.R; import com.mapbox.mapboxandroiddemo.model.usermodel.UserResponse; @@ -26,14 +26,14 @@ import retrofit2.Retrofit; import retrofit2.converter.gson.GsonConverterFactory; -import static com.example.sharedcode.analytics.StringConstants.AUTHCODE_KEY; -import static com.example.sharedcode.analytics.StringConstants.AVATAR_IMAGE_KEY; -import static com.example.sharedcode.analytics.StringConstants.CLIENT_ID_KEY; -import static com.example.sharedcode.analytics.StringConstants.EMAIL_KEY; -import static com.example.sharedcode.analytics.StringConstants.REDIRECT_URI_KEY; -import static com.example.sharedcode.analytics.StringConstants.TOKEN_KEY; -import static com.example.sharedcode.analytics.StringConstants.TOKEN_SAVED_KEY; -import static com.example.sharedcode.analytics.StringConstants.USERNAME_KEY; +import static com.mapbox.mapboxandroiddemo.commons.StringConstants.AUTHCODE_KEY; +import static com.mapbox.mapboxandroiddemo.commons.StringConstants.AVATAR_IMAGE_KEY; +import static com.mapbox.mapboxandroiddemo.commons.StringConstants.CLIENT_ID_KEY; +import static com.mapbox.mapboxandroiddemo.commons.StringConstants.EMAIL_KEY; +import static com.mapbox.mapboxandroiddemo.commons.StringConstants.REDIRECT_URI_KEY; +import static com.mapbox.mapboxandroiddemo.commons.StringConstants.TOKEN_KEY; +import static com.mapbox.mapboxandroiddemo.commons.StringConstants.TOKEN_SAVED_KEY; +import static com.mapbox.mapboxandroiddemo.commons.StringConstants.USERNAME_KEY; /** diff --git a/MapboxAndroidDemo/src/main/java/com/mapbox/mapboxandroiddemo/account/LandingActivity.java b/MapboxAndroidDemo/src/main/java/com/mapbox/mapboxandroiddemo/account/LandingActivity.java index 48333bd14..1017930f4 100644 --- a/MapboxAndroidDemo/src/main/java/com/mapbox/mapboxandroiddemo/account/LandingActivity.java +++ b/MapboxAndroidDemo/src/main/java/com/mapbox/mapboxandroiddemo/account/LandingActivity.java @@ -14,17 +14,17 @@ import com.afollestad.materialdialogs.DialogAction; import com.afollestad.materialdialogs.MaterialDialog; -import com.example.sharedcode.analytics.AnalyticsTracker; +import com.mapbox.mapboxandroiddemo.commons.AnalyticsTracker; import com.github.javiersantos.materialstyleddialogs.MaterialStyledDialog; import com.mapbox.mapboxandroiddemo.MainActivity; import com.mapbox.mapboxandroiddemo.R; -import static com.example.sharedcode.analytics.AnalyticsTracker.CLICKED_ON_CREATE_ACCOUNT_BUTTON; -import static com.example.sharedcode.analytics.AnalyticsTracker.CLICKED_ON_SIGN_IN_BUTTON; -import static com.example.sharedcode.analytics.StringConstants.AUTHCODE_KEY; -import static com.example.sharedcode.analytics.StringConstants.CLIENT_ID_KEY; -import static com.example.sharedcode.analytics.StringConstants.REDIRECT_URI_KEY; -import static com.example.sharedcode.analytics.StringConstants.TOKEN_SAVED_KEY; +import static com.mapbox.mapboxandroiddemo.commons.AnalyticsTracker.CLICKED_ON_CREATE_ACCOUNT_BUTTON; +import static com.mapbox.mapboxandroiddemo.commons.AnalyticsTracker.CLICKED_ON_SIGN_IN_BUTTON; +import static com.mapbox.mapboxandroiddemo.commons.StringConstants.AUTHCODE_KEY; +import static com.mapbox.mapboxandroiddemo.commons.StringConstants.CLIENT_ID_KEY; +import static com.mapbox.mapboxandroiddemo.commons.StringConstants.REDIRECT_URI_KEY; +import static com.mapbox.mapboxandroiddemo.commons.StringConstants.TOKEN_SAVED_KEY; public class LandingActivity extends AppCompatActivity { diff --git a/MapboxAndroidDemo/src/main/java/com/mapbox/mapboxandroiddemo/utils/SettingsDialogView.java b/MapboxAndroidDemo/src/main/java/com/mapbox/mapboxandroiddemo/utils/SettingsDialogView.java index a2cab7843..d261cdc46 100644 --- a/MapboxAndroidDemo/src/main/java/com/mapbox/mapboxandroiddemo/utils/SettingsDialogView.java +++ b/MapboxAndroidDemo/src/main/java/com/mapbox/mapboxandroiddemo/utils/SettingsDialogView.java @@ -10,19 +10,19 @@ import android.widget.Switch; import android.widget.Toast; -import com.example.sharedcode.analytics.AnalyticsTracker; +import com.mapbox.mapboxandroiddemo.commons.AnalyticsTracker; import com.mapbox.mapboxandroiddemo.R; import com.mapbox.mapboxandroiddemo.account.LandingActivity; -import static com.example.sharedcode.analytics.AnalyticsTracker.LOGGED_OUT_OF_MAPBOX_ACCOUNT; -import static com.example.sharedcode.analytics.AnalyticsTracker.OPTED_IN_TO_ANALYTICS; -import static com.example.sharedcode.analytics.AnalyticsTracker.OPTED_OUT_OF_ANALYTICS; -import static com.example.sharedcode.analytics.StringConstants.AVATAR_IMAGE_KEY; -import static com.example.sharedcode.analytics.StringConstants.EMAIL_KEY; -import static com.example.sharedcode.analytics.StringConstants.FROM_LOG_OUT_BUTTON_KEY; -import static com.example.sharedcode.analytics.StringConstants.TOKEN_KEY; -import static com.example.sharedcode.analytics.StringConstants.TOKEN_SAVED_KEY; -import static com.example.sharedcode.analytics.StringConstants.USERNAME_KEY; +import static com.mapbox.mapboxandroiddemo.commons.AnalyticsTracker.LOGGED_OUT_OF_MAPBOX_ACCOUNT; +import static com.mapbox.mapboxandroiddemo.commons.AnalyticsTracker.OPTED_IN_TO_ANALYTICS; +import static com.mapbox.mapboxandroiddemo.commons.AnalyticsTracker.OPTED_OUT_OF_ANALYTICS; +import static com.mapbox.mapboxandroiddemo.commons.StringConstants.AVATAR_IMAGE_KEY; +import static com.mapbox.mapboxandroiddemo.commons.StringConstants.EMAIL_KEY; +import static com.mapbox.mapboxandroiddemo.commons.StringConstants.FROM_LOG_OUT_BUTTON_KEY; +import static com.mapbox.mapboxandroiddemo.commons.StringConstants.TOKEN_KEY; +import static com.mapbox.mapboxandroiddemo.commons.StringConstants.TOKEN_SAVED_KEY; +import static com.mapbox.mapboxandroiddemo.commons.StringConstants.USERNAME_KEY; public class SettingsDialogView { diff --git a/MapboxAndroidWearDemo/build.gradle b/MapboxAndroidWearDemo/build.gradle index a12010dc9..d5ee22d76 100644 --- a/MapboxAndroidWearDemo/build.gradle +++ b/MapboxAndroidWearDemo/build.gradle @@ -3,7 +3,7 @@ apply from: "$project.rootDir/script-git-version.gradle" android { compileSdkVersion 25 - buildToolsVersion "25.0.2" + buildToolsVersion "25.0.3" defaultConfig { applicationId "com.mapbox.mapboxandroiddemo" @@ -24,8 +24,8 @@ dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) provided 'com.google.android.wearable:wearable:2.0.3' compile 'com.google.android.support:wearable:2.0.3' - compile 'com.google.android.gms:play-services-wearable:11.0.0' - compile 'com.google.android.gms:play-services-location:11.0.0' + compile 'com.google.android.gms:play-services-wearable:11.0.1' + compile 'com.google.android.gms:play-services-location:11.0.1' // Mapbox dependencies compile ('com.mapbox.mapboxsdk:mapbox-android-sdk:5.1.0-beta.5@aar') { transitive = true diff --git a/MapboxAndroidWearDemo/src/main/java/com/mapbox/mapboxandroiddemo/MainActivity.java b/MapboxAndroidWearDemo/src/main/java/com/mapbox/mapboxandroiddemo/MainActivity.java index 320889d98..d1476174e 100644 --- a/MapboxAndroidWearDemo/src/main/java/com/mapbox/mapboxandroiddemo/MainActivity.java +++ b/MapboxAndroidWearDemo/src/main/java/com/mapbox/mapboxandroiddemo/MainActivity.java @@ -5,10 +5,10 @@ import android.support.wearable.activity.WearableActivity; import android.support.wearable.view.WearableRecyclerView; -import com.example.sharedcode.analytics.AnalyticsTracker; -import com.example.sharedcode.analytics.FirstTimeRunChecker; import com.mapbox.mapboxandroiddemo.adapter.ExampleAdapter; +import com.mapbox.mapboxandroiddemo.commons.AnalyticsTracker; +import com.mapbox.mapboxandroiddemo.commons.FirstTimeRunChecker; import com.mapbox.mapboxandroiddemo.examples.LocationTrackingActivity; import com.mapbox.mapboxandroiddemo.examples.MapFragmentActivity; import com.mapbox.mapboxandroiddemo.examples.OfflineMapActivity; diff --git a/SharedCode/.gitignore b/SharedCode/.gitignore index 796b96d1c..8446697f1 100644 --- a/SharedCode/.gitignore +++ b/SharedCode/.gitignore @@ -1 +1,2 @@ /build +/src/main/res/values/developer-config.xml \ No newline at end of file diff --git a/SharedCode/build.gradle b/SharedCode/build.gradle index 7de3af39a..a4da0a052 100644 --- a/SharedCode/build.gradle +++ b/SharedCode/build.gradle @@ -2,32 +2,18 @@ apply plugin: 'com.android.library' android { compileSdkVersion 25 - buildToolsVersion "25.0.2" + buildToolsVersion "25.0.3" defaultConfig { minSdkVersion 15 targetSdkVersion 25 versionCode 1 versionName "1.0" - - testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" - - } - buildTypes { - release { - minifyEnabled false - proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' - } } } dependencies { - compile fileTree(dir: 'libs', include: ['*.jar']) - androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { - exclude group: 'com.android.support', module: 'support-annotations' - }) - compile 'com.android.support:appcompat-v7:25.3.1' - testCompile 'junit:junit:4.12' + compile 'com.android.support:support-annotations:25.3.1' compile 'com.segment.analytics.java:analytics:2.0.0' } apply from: './gradle-config.gradle' \ No newline at end of file diff --git a/SharedCode/gradle-config.gradle b/SharedCode/gradle-config.gradle index c32feff9c..4a7a7c27d 100644 --- a/SharedCode/gradle-config.gradle +++ b/SharedCode/gradle-config.gradle @@ -5,6 +5,10 @@ task secretKeysSetup { def secretFile = new File("${projectDir}/src/main/res/values/developer-config.xml") if (!secretFile.exists()) { + // create values folder if non existent + def folder = new File("${projectDir}/src/main/res/values") + folder.mkdirs() + String mapboxFlowSecret = "$System.env.MAPBOX_AUTH_FLOW_SECRET" if (mapboxFlowSecret == "null") { System.out.println("You should set the MAPBOX_AUTH_FLOW_SECRET environment variable.") diff --git a/SharedCode/proguard-rules.pro b/SharedCode/proguard-rules.pro deleted file mode 100644 index 4839f9233..000000000 --- a/SharedCode/proguard-rules.pro +++ /dev/null @@ -1,25 +0,0 @@ -# Add project specific ProGuard rules here. -# By default, the flags in this file are appended to flags specified -# in /Users/langstonsmith/Library/Android/sdk/tools/proguard/proguard-android.txt -# You can edit the include path and order by changing the proguardFiles -# directive in build.gradle. -# -# For more details, see -# http://developer.android.com/guide/developing/tools/proguard.html - -# Add any project specific keep options here: - -# If your project uses WebView with JS, uncomment the following -# and specify the fully qualified class name to the JavaScript interface -# class: -#-keepclassmembers class fqcn.of.javascript.interface.for.webview { -# public *; -#} - -# Uncomment this to preserve the line number information for -# debugging stack traces. -#-keepattributes SourceFile,LineNumberTable - -# If you keep the line number information, uncomment this to -# hide the original source file name. -#-renamesourcefileattribute SourceFile diff --git a/SharedCode/src/androidTest/java/com/example/sharedcode/ExampleInstrumentedTest.java b/SharedCode/src/androidTest/java/com/example/sharedcode/ExampleInstrumentedTest.java deleted file mode 100644 index de42d1728..000000000 --- a/SharedCode/src/androidTest/java/com/example/sharedcode/ExampleInstrumentedTest.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.example.sharedcode; - -import android.content.Context; -import android.support.test.InstrumentationRegistry; -import android.support.test.runner.AndroidJUnit4; - -import org.junit.Test; -import org.junit.runner.RunWith; - -import static org.junit.Assert.*; - -/** - * Instrumentation test, which will execute on an Android device. - * - * @see Testing documentation - */ -@RunWith(AndroidJUnit4.class) -public class ExampleInstrumentedTest { - @Test - public void useAppContext() throws Exception { - // Context of the app under test. - Context appContext = InstrumentationRegistry.getTargetContext(); - - assertEquals("com.example.sharedcode.test", appContext.getPackageName()); - } -} diff --git a/SharedCode/src/main/AndroidManifest.xml b/SharedCode/src/main/AndroidManifest.xml index 5df2a0ff6..e6a0f7ca6 100644 --- a/SharedCode/src/main/AndroidManifest.xml +++ b/SharedCode/src/main/AndroidManifest.xml @@ -1,13 +1 @@ - - - - - - - + diff --git a/SharedCode/src/main/java/com/example/sharedcode/analytics/AnalyticsTracker.java b/SharedCode/src/main/java/com/mapbox/mapboxandroiddemo/commons/AnalyticsTracker.java similarity index 94% rename from SharedCode/src/main/java/com/example/sharedcode/analytics/AnalyticsTracker.java rename to SharedCode/src/main/java/com/mapbox/mapboxandroiddemo/commons/AnalyticsTracker.java index ec5c4e5e1..7a0756be9 100644 --- a/SharedCode/src/main/java/com/example/sharedcode/analytics/AnalyticsTracker.java +++ b/SharedCode/src/main/java/com/mapbox/mapboxandroiddemo/commons/AnalyticsTracker.java @@ -1,13 +1,11 @@ -package com.example.sharedcode.analytics; +package com.mapbox.mapboxandroiddemo.commons; import android.content.Context; import android.content.SharedPreferences; import android.os.Build; import android.preference.PreferenceManager; import android.support.annotation.NonNull; -import android.support.annotation.Nullable; -import com.example.sharedcode.R; import com.segment.analytics.Analytics; import com.segment.analytics.messages.IdentifyMessage; import com.segment.analytics.messages.ScreenMessage; @@ -17,9 +15,6 @@ import java.util.Locale; import java.util.Map; -import static com.example.sharedcode.analytics.StringConstants.EMAIL_KEY; -import static com.example.sharedcode.analytics.StringConstants.USERNAME_KEY; - /** * This class abstracts various analytics calls to Segment analytics' Java library. */ @@ -38,7 +33,7 @@ public class AnalyticsTracker { public static final String CLICKED_ON_CREATE_ACCOUNT_BUTTON = "Clicked on create account button"; public static final String CLICKED_ON_SIGN_IN_BUTTON = "Clicked on sign in button"; - private Context appContext = null; + private Context appContext; private static volatile AnalyticsTracker analyticsInstance; private static volatile Analytics analytics; private static final String CLICKED_ON_NAV_DRAWER_SECTION_EVENT_NAME = "Clicked on nav drawer section"; @@ -51,7 +46,7 @@ public class AnalyticsTracker { private static final String MAPBOX_SHARED_PREFERENCE_KEY_ANALYTICS_ENABLED = "mapboxAnalyticsEnabled"; private static final String MAPBOX_SHARED_PREFERENCES_FILE = "MapboxSharedPreferences"; private static String MAPBOX_USERNAME; - private Boolean analyticsEnabled = null; + private Boolean analyticsEnabled; private Boolean deviceIsWearable; /** @@ -77,7 +72,7 @@ public static AnalyticsTracker getInstance(@NonNull Context context, boolean isW public void setMapboxUsername() { MAPBOX_USERNAME = PreferenceManager.getDefaultSharedPreferences( - analyticsInstance.appContext).getString(USERNAME_KEY, "not logged in"); + analyticsInstance.appContext).getString(StringConstants.USERNAME_KEY, "not logged in"); } /** @@ -85,10 +80,10 @@ public void setMapboxUsername() { * when app is opened for the first time or if shared preferences is cleared. **/ - public void openedAppForFirstTime(@Nullable boolean isTablet, boolean loggedIn) { + public void openedAppForFirstTime(boolean isTablet, boolean loggedIn) { Map properties = new HashMap<>(); properties.put("email", getSharedPreferences(appContext) - .getString(EMAIL_KEY, "not logged in")); + .getString(StringConstants.EMAIL_KEY, "not logged in")); properties.put("model", Build.MODEL); properties.put("brand", Build.BRAND); properties.put("product", Build.PRODUCT); diff --git a/SharedCode/src/main/java/com/example/sharedcode/analytics/FirstTimeRunChecker.java b/SharedCode/src/main/java/com/mapbox/mapboxandroiddemo/commons/FirstTimeRunChecker.java similarity index 55% rename from SharedCode/src/main/java/com/example/sharedcode/analytics/FirstTimeRunChecker.java rename to SharedCode/src/main/java/com/mapbox/mapboxandroiddemo/commons/FirstTimeRunChecker.java index 3d8d19a03..f3afbca8e 100644 --- a/SharedCode/src/main/java/com/example/sharedcode/analytics/FirstTimeRunChecker.java +++ b/SharedCode/src/main/java/com/mapbox/mapboxandroiddemo/commons/FirstTimeRunChecker.java @@ -1,45 +1,32 @@ -package com.example.sharedcode.analytics; +package com.mapbox.mapboxandroiddemo.commons; import android.content.Context; import android.content.SharedPreferences; import android.preference.PreferenceManager; -import com.example.sharedcode.BuildConfig; - - /** * This class checks whether the app is being opened for the first time or not and adjusts shared preferences */ public class FirstTimeRunChecker { - private static final String PREFS_NAME = "MyPrefsFile"; private static final String PREF_VERSION_CODE_KEY = "version_code"; private static final int DOESNT_EXIST = -1; - private Context context; - - // Get current version code - private int currentVersionCode = BuildConfig.VERSION_CODE; - // Get saved version code - private SharedPreferences prefs; - private int savedVersionCode; + private final SharedPreferences prefs; + private final int savedVersionCode; public FirstTimeRunChecker(Context context) { - this.context = context; prefs = PreferenceManager.getDefaultSharedPreferences(context); savedVersionCode = prefs.getInt(PREF_VERSION_CODE_KEY, DOESNT_EXIST); } public boolean firstEverOpen() { - if (savedVersionCode == DOESNT_EXIST) { - return true; - } - return false; + return savedVersionCode == DOESNT_EXIST; } public void updateSharedPrefWithCurrentVersion() { - prefs.edit().putInt(PREF_VERSION_CODE_KEY, currentVersionCode).apply(); + prefs.edit().putInt(PREF_VERSION_CODE_KEY, BuildConfig.VERSION_CODE).apply(); } } diff --git a/SharedCode/src/main/java/com/example/sharedcode/analytics/StringConstants.java b/SharedCode/src/main/java/com/mapbox/mapboxandroiddemo/commons/StringConstants.java similarity index 93% rename from SharedCode/src/main/java/com/example/sharedcode/analytics/StringConstants.java rename to SharedCode/src/main/java/com/mapbox/mapboxandroiddemo/commons/StringConstants.java index 129ef58cb..b4340ee1e 100644 --- a/SharedCode/src/main/java/com/example/sharedcode/analytics/StringConstants.java +++ b/SharedCode/src/main/java/com/mapbox/mapboxandroiddemo/commons/StringConstants.java @@ -1,4 +1,4 @@ -package com.example.sharedcode.analytics; +package com.mapbox.mapboxandroiddemo.commons; public class StringConstants { diff --git a/SharedCode/src/main/res/values/strings.xml b/SharedCode/src/main/res/values/strings.xml deleted file mode 100644 index 66afeb97f..000000000 --- a/SharedCode/src/main/res/values/strings.xml +++ /dev/null @@ -1,3 +0,0 @@ - - SharedCode - diff --git a/SharedCode/src/test/java/com/example/sharedcode/ExampleUnitTest.java b/SharedCode/src/test/java/com/example/sharedcode/ExampleUnitTest.java deleted file mode 100644 index 03f073ffe..000000000 --- a/SharedCode/src/test/java/com/example/sharedcode/ExampleUnitTest.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.example.sharedcode; - -import org.junit.Test; - -import static org.junit.Assert.*; - -/** - * Example local unit test, which will execute on the development machine (host). - * - * @see Testing documentation - */ -public class ExampleUnitTest { - @Test - public void addition_isCorrect() throws Exception { - assertEquals(4, 2 + 2); - } -} \ No newline at end of file diff --git a/bitrise.yml b/bitrise.yml index 288c33e7c..cd8e6904a 100644 --- a/bitrise.yml +++ b/bitrise.yml @@ -11,12 +11,19 @@ trigger_map: workflows: primary: steps: + - script: + title: Export secrets for developer-config.xml + inputs: + - content: |- + #!/bin/bash + export MAPBOX_AUTH_FLOW_SECRET="$MAPBOX_AUTH_FLOW_SECRET" + export SEGMENT_API_WRITE_KEY_DEMO="$SEGMENT_API_WRITE_KEY_DEMO" + export SEGMENT_API_WRITE_KEY_WEARABLE_DEMO="$SEGMENT_API_WRITE_KEY_WEARABLE_DEMO" - gradle-runner: inputs: - gradle_task: "$CHECKSTYLE_TASK" - script: title: Configure Google Cloud SDK - run_if: '{{enveq "SKIPCI" "false"}}' inputs: - content: |- #!/bin/bash @@ -45,7 +52,7 @@ workflows: echo "Run tests on firebase:" gcloud auth activate-service-account --key-file secret.json --project mapbox-android-demo - gcloud beta test android run --type robo --app MapboxAndroidDemo/build/outputs/apk/MapboxAndroidDemo-gpservices-armeabi-v7a-debug.apk --device-ids shamu --os-version-ids 22 --locales en --orientations portrait --timeout 10m + gcloud beta test android run --type robo --app MapboxAndroidDemo/build/outputs/apk/MapboxAndroidDemo-gpservices-debug.apk --device-ids shamu --os-version-ids 22 --locales en --orientations portrait --timeout 10m - deploy-to-bitrise-io: inputs: - notify_user_groups: none diff --git a/whatsnew/whatsnew-en-US b/whatsnew/whatsnew-en-US index 7fa776176..becf22c7b 100644 --- a/whatsnew/whatsnew-en-US +++ b/whatsnew/whatsnew-en-US @@ -1 +1,9 @@ -Update to 5.1.0-beta.4 \ No newline at end of file +Update to 5.1.0-beta.5 + +This release introduces more examples for: + +• Extrusions (3D buildings) +• Data-driven styling +• Annotations + +Mapbox’s new branding and colors are integrated too.