summaryrefslogtreecommitdiff
path: root/platform/osx/include/MGLAccountManager.h
blob: efcec5419c08abfd395d1fc1abfe9ea94e83b830 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#import <Foundation/Foundation.h>

#import "MGLTypes.h"

NS_ASSUME_NONNULL_BEGIN

/** The MGLAccountManager object provides a global way to set a Mapbox API
    access token, as well as other settings used framework-wide. */
@interface MGLAccountManager : NSObject

#pragma mark Authorizing access
/** @name Authorizing Access */

/** Set the
    [Mapbox access token](https://www.mapbox.com/help/define-access-token/) to
    used by all instances of MGLMapView in the current application.
    
    Mapbox-hosted vector tiles and styles require an API access token, which you
    can obtain from the
    [Mapbox account page](https://www.mapbox.com/studio/account/tokens/). Access
    tokens associate requests to Mapbox’s vector tile and style APIs with your
    Mapbox account. They also deter other developers from using your styles
    without your permission.
    
    @param accessToken A Mapbox access token. Calling this method with a value
        of `nil` has no effect.
    
    @note You must set the access token before attempting to load any
        Mapbox-hosted style. Therefore, you should generally set it before
        creating an instance of MGLMapView. The recommended way to set an access
        token is to add an entry to your application’s Info.plist file with the
        key `MGLMapboxAccessToken` and the type String. Alternatively, you may
        call this method from your application delegate’s
        -applicationDidFinishLaunching: method. */
+ (void)setAccessToken:(nullable NSString *)accessToken;

/** Returns the
    [Mapbox access token](https://www.mapbox.com/help/define-access-token/) in
    use by instances of MGLMapView in the current application. */
+ (nullable NSString *)accessToken;

@end

NS_ASSUME_NONNULL_END