diff options
-rw-r--r-- | platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/telemetry/MapboxEventManager.java | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/telemetry/MapboxEventManager.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/telemetry/MapboxEventManager.java index 34ff31cd2f..67eb51fd8f 100644 --- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/telemetry/MapboxEventManager.java +++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/telemetry/MapboxEventManager.java @@ -181,16 +181,10 @@ public class MapboxEventManager { this.accessToken = stagingAccessToken; } - String appName = context.getPackageManager().getApplicationLabel(appInfo).toString(); - PackageInfo packageInfo = context.getPackageManager().getPackageInfo(context.getPackageName(), 0); - String versionName = packageInfo.versionName; - int versionCode = packageInfo.versionCode; - // Build User Agent - if (TextUtils.equals(userAgent, BuildConfig.MAPBOX_EVENTS_USER_AGENT_BASE) && !TextUtils.isEmpty(appName) && !TextUtils.isEmpty(versionName)) { - userAgent = appName + "/" + versionName + "/" + versionCode + " " + userAgent; - // Ensure that only ASCII characters are sent - userAgent = Util.toHumanReadableAscii(userAgent); + String appIdentifier = getApplicationIdentifier(); + if (TextUtils.equals(userAgent, BuildConfig.MAPBOX_EVENTS_USER_AGENT_BASE) && !TextUtils.isEmpty(appIdentifier)) { + userAgent = Util.toHumanReadableAscii(String.format(MapboxConstants.MAPBOX_LOCALE, "%s %s", appIdentifier, userAgent)); } } catch (Exception e) { @@ -779,4 +773,13 @@ public class MapboxEventManager { new FlushTheEventsTask().execute(); } } + + private String getApplicationIdentifier() { + try { + PackageInfo packageInfo = context.getPackageManager().getPackageInfo(context.getPackageName(), 0); + return String.format(MapboxConstants.MAPBOX_LOCALE, "%s/%s/%s", context.getPackageName(), packageInfo.versionName, packageInfo.versionCode); + } catch (Exception e) { + return ""; + } + } } |