hank
2018-08-30 9f077bbd393b5c47afbbfd83454f6a08a6345dbd
commit | author | age
bad748 1 /*
W 2  *  Copyright (c) 2014, Facebook, Inc.
3  *  All rights reserved.
4  *
5  *  This source code is licensed under the BSD-style license found in the
6  *  LICENSE file in the root directory of this source tree. An additional grant
7  *  of patent rights can be found in the PATENTS file in the same directory.
8  *
9  */
10
11 #import <Foundation/Foundation.h>
12
13 /*! The version of the App Link protocol that this library supports */
14 FOUNDATION_EXPORT NSString *const BFAppLinkVersion;
15
16 /*!
17  Contains App Link metadata relevant for navigation on this device
18  derived from the HTML at a given URL.
19  */
20 @interface BFAppLink : NSObject
21
22 /*!
23  Creates a BFAppLink with the given list of BFAppLinkTargets and target URL.
24
25  Generally, this will only be used by implementers of the BFAppLinkResolving protocol,
26  as these implementers will produce App Link metadata for a given URL.
27
28  @param sourceURL the URL from which this App Link is derived
29  @param targets an ordered list of BFAppLinkTargets for this platform derived
30  from App Link metadata.
31  @param webURL the fallback web URL, if any, for the app link.
32  */
33 + (instancetype)appLinkWithSourceURL:(NSURL *)sourceURL
34                              targets:(NSArray *)targets
35                               webURL:(NSURL *)webURL;
36
37 /*! The URL from which this BFAppLink was derived */
38 @property (nonatomic, strong, readonly) NSURL *sourceURL;
39
40 /*!
41  The ordered list of targets applicable to this platform that will be used
42  for navigation.
43  */
44 @property (nonatomic, copy, readonly) NSArray *targets;
45
46 /*! The fallback web URL to use if no targets are installed on this device. */
47 @property (nonatomic, strong, readonly) NSURL *webURL;
48
49 @end