diff options
Diffstat (limited to 'platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/MapboxAccountManager.java')
-rw-r--r-- | platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/MapboxAccountManager.java | 216 |
1 files changed, 109 insertions, 107 deletions
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/MapboxAccountManager.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/MapboxAccountManager.java index b33d01a105..5f26228c5d 100644 --- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/MapboxAccountManager.java +++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/MapboxAccountManager.java @@ -13,119 +13,121 @@ import com.mapbox.mapboxsdk.telemetry.MapboxEventManager; public class MapboxAccountManager { - private static MapboxAccountManager mapboxAccountManager = null; - - private final String accessToken; - private final Context applicationContext; - - private Boolean connected = null; - - /** - * MapboxAccountManager should NOT be instantiated directly. - * Use @see MapboxAccountManager#getInstance() instead. - * - * @param applicationContext Context used to get ApplicationContext - * @param accessToken Mapbox Access Token - */ - private MapboxAccountManager(Context applicationContext, String accessToken) { - super(); - this.applicationContext = applicationContext.getApplicationContext(); - this.accessToken = accessToken; + private static MapboxAccountManager mapboxAccountManager = null; + + private final String accessToken; + private final Context applicationContext; + + private Boolean connected = null; + + /** + * MapboxAccountManager should NOT be instantiated directly. + * Use @see MapboxAccountManager#getInstance() instead. + * + * @param applicationContext Context used to get ApplicationContext + * @param accessToken Mapbox Access Token + */ + private MapboxAccountManager(Context applicationContext, String accessToken) { + super(); + this.applicationContext = applicationContext.getApplicationContext(); + this.accessToken = accessToken; + } + + /** + * Primary entry point to Mapbox for implementing developers. + * Must be configured in either Application.onCreate() or Launch Activity.onCreate() + * + * @param context Context used to get Application Context + * @param accessToken Mapbox Access Token. You can get one on the Mapbox Web site. + * @return MapboxAccountManager instance for app + */ + public static MapboxAccountManager start(Context context, String accessToken) { + if (mapboxAccountManager == null) { + //Create a new account manager + mapboxAccountManager = new MapboxAccountManager(context, accessToken); + + //Initialize the event manager + MapboxEventManager.getMapboxEventManager().initialize(context, accessToken); + + //Register a receiver to listen for connectivity updates + ConnectivityReceiver.instance(context); } - /** - * Primary entry point to Mapbox for implementing developers. - * Must be configured in either Application.onCreate() or Launch Activity.onCreate() - * - * @param context Context used to get Application Context - * @param accessToken Mapbox Access Token. You can get one on the Mapbox Web site. - * @return MapboxAccountManager instance for app - */ - public static MapboxAccountManager start(Context context, String accessToken) { - if (mapboxAccountManager == null) { - //Create a new account manager - mapboxAccountManager = new MapboxAccountManager(context, accessToken); - - //Initialize the event manager - MapboxEventManager.getMapboxEventManager().initialize(context, accessToken); - - //Register a receiver to listen for connectivity updates - ConnectivityReceiver.instance(context); - } - - return mapboxAccountManager; + return mapboxAccountManager; + } + + /** + * Internal Use Only + * Get an instance of MapboxAccountManager configured with the app's Access Token + * + * @return MapboxAccountManager instance for app. May be NULL if not configured yet. + */ + public static MapboxAccountManager getInstance() { + if (mapboxAccountManager == null) { + throw new MapboxAccountManagerNotStartedException(); } - /** - * Internal Use Only - * Get an instance of MapboxAccountManager configured with the app's Access Token - * - * @return MapboxAccountManager instance for app. May be NULL if not configured yet. - */ - public static MapboxAccountManager getInstance() { - if (mapboxAccountManager == null) { - throw new MapboxAccountManagerNotStartedException(); - } - - return mapboxAccountManager; + return mapboxAccountManager; + } + + /** + * Access Token for this application. + * + * @return Mapbox Access Token + */ + public String getAccessToken() { + return accessToken; + } + + /** + * Runtime validation of Access Token. + * + * @param accessToken Access Token to check + * @throws InvalidAccessTokenException the exception thrown + */ + public static void validateAccessToken(String accessToken) throws InvalidAccessTokenException { + if (TextUtils.isEmpty(accessToken) || (!accessToken.toLowerCase(MapboxConstants.MAPBOX_LOCALE).startsWith("pk.") + && !accessToken.toLowerCase(MapboxConstants.MAPBOX_LOCALE).startsWith("sk."))) { + throw new InvalidAccessTokenException(); } - - /** - * Access Token for this application. - * - * @return Mapbox Access Token - */ - public String getAccessToken() { - return accessToken; - } - - /** - * Runtime validation of Access Token. - * - * @param accessToken Access Token to check - * @throws InvalidAccessTokenException the exception thrown - */ - public static void validateAccessToken(String accessToken) throws InvalidAccessTokenException { - if (TextUtils.isEmpty(accessToken) || (!accessToken.toLowerCase(MapboxConstants.MAPBOX_LOCALE).startsWith("pk.") && !accessToken.toLowerCase(MapboxConstants.MAPBOX_LOCALE).startsWith("sk."))) { - throw new InvalidAccessTokenException(); - } - } - - /** - * Manually sets the connectivity state of the app. This is useful for apps that control their - * own connectivity state and want to bypass any checks to the ConnectivityManager. - * - * @param connected flag to determine the connectivity state, true for connected, false for - * disconnected, null for ConnectivityManager to determine. - */ - public void setConnected(Boolean connected) { - // Connectivity state overridden by app - this.connected = connected; - } - - /** - * Determines whether we have an Internet connection available. Please do not rely on this - * method in your apps, this method is used internally by the SDK. - * - * @return true if there is an Internet connection, false otherwise - */ - public Boolean isConnected() { - if (connected != null) { - // Connectivity state overridden by app - return connected; - } - - ConnectivityManager cm = (ConnectivityManager) applicationContext.getSystemService(Context.CONNECTIVITY_SERVICE); - NetworkInfo activeNetwork = cm.getActiveNetworkInfo(); - return (activeNetwork != null && activeNetwork.isConnected()); + } + + /** + * Manually sets the connectivity state of the app. This is useful for apps that control their + * own connectivity state and want to bypass any checks to the ConnectivityManager. + * + * @param connected flag to determine the connectivity state, true for connected, false for + * disconnected, null for ConnectivityManager to determine. + */ + public void setConnected(Boolean connected) { + // Connectivity state overridden by app + this.connected = connected; + } + + /** + * Determines whether we have an Internet connection available. Please do not rely on this + * method in your apps, this method is used internally by the SDK. + * + * @return true if there is an Internet connection, false otherwise + */ + public Boolean isConnected() { + if (connected != null) { + // Connectivity state overridden by app + return connected; } - /** - * Not public API - * @return the Application Context - */ - public Context getApplicationContext() { - return applicationContext; - } + ConnectivityManager cm = (ConnectivityManager) applicationContext.getSystemService(Context.CONNECTIVITY_SERVICE); + NetworkInfo activeNetwork = cm.getActiveNetworkInfo(); + return (activeNetwork != null && activeNetwork.isConnected()); + } + + /** + * Not public API + * + * @return the Application Context + */ + public Context getApplicationContext() { + return applicationContext; + } } |