in apps/sasquatch/src/main/java/com/microsoft/appcenter/sasquatch/activities/MainActivity.java [114:173]
static void startAppCenter(Application application, String startTypeString) {
/* Set session generation value. */
boolean isManualSessionTrackerEnabled = sSharedPreferences.getBoolean(application.getString(R.string.appcenter_analytics_session_tracker_state_key), false);
if (isManualSessionTrackerEnabled) {
Analytics.enableManualSessionTracker();
}
/* Set country code. */
String countryCode = MainActivity.sSharedPreferences.getString(application.getString(R.string.country_code_key), null);
if (countryCode != null) {
AppCenter.setCountryCode(countryCode);
}
/* Set the track explicitly only if we set it in settings, to test the initial public by default at first launch. */
int savedTrack = sSharedPreferences.getInt(application.getString(R.string.appcenter_distribute_track_state_key), 0);
if (savedTrack != 0) {
Distribute.setUpdateTrack(savedTrack);
}
boolean automaticCheckForUpdate = sSharedPreferences.getBoolean(application.getString(R.string.appcenter_distribute_disable_automatic_check_for_update_key), true);
if (!automaticCheckForUpdate) {
Distribute.disableAutomaticCheckForUpdate();
}
if (sSharedPreferences.contains(ANALYTICS_TRANSMISSION_INTERVAL_KEY)) {
int latency = sSharedPreferences.getInt(ANALYTICS_TRANSMISSION_INTERVAL_KEY, DEFAULT_TRANSMISSION_INTERVAL_IN_SECONDS);
try {
boolean result = Analytics.setTransmissionInterval(latency);
if (result) {
Toast.makeText(application, String.format(application.getString(R.string.analytics_transmission_interval_change_success), latency), Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(application, application.getString(R.string.analytics_transmission_interval_change_failed), Toast.LENGTH_SHORT).show();
}
} catch (Exception ignored) {
/* Nothing to handle; this is reached if Analytics isn't being used. */
}
}
StartType startType = StartType.valueOf(startTypeString);
if (startType == StartType.SKIP_START) {
return;
}
String appId = sSharedPreferences.getString(APP_SECRET_KEY, getDefaultAppSecret(application.getResources()));
String targetId = sSharedPreferences.getString(TARGET_KEY, application.getString(R.string.target_id));
String appIdArg = "";
switch (startType) {
case APP_SECRET:
appIdArg = appId;
break;
case TARGET:
appIdArg = String.format("target=%s", targetId);
break;
case BOTH:
appIdArg = String.format("appsecret=%s;target=%s", appId, targetId);
break;
case NO_SECRET:
AppCenter.start(application, Analytics.class, Crashes.class, Distribute.class);
return;
}
AppCenter.start(application, appIdArg, Analytics.class, Crashes.class, Distribute.class);
}