-
Notifications
You must be signed in to change notification settings - Fork 37
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #23 from GameSmash/update/4.5.0
Update to v4.5.0 and add Firestore and ABTesting
- Loading branch information
Showing
764 changed files
with
121,914 additions
and
8,098 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Binary file not shown.
48 changes: 48 additions & 0 deletions
48
Source/ABTesting/FirebaseABTesting.framework/Headers/FIRExperimentController.h
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,48 @@ | ||
#import <Foundation/Foundation.h> | ||
|
||
#import "developers/mobile/abt/proto/ExperimentPayload.pbobjc.h" | ||
|
||
NS_ASSUME_NONNULL_BEGIN | ||
|
||
@class FIRLifecycleEvents; | ||
|
||
/// The default experiment overflow policy, that is to discard the experiment with the oldest start | ||
/// time when users start the experiment on the web console. | ||
extern const ABTExperimentPayload_ExperimentOverflowPolicy FIRDefaultExperimentOverflowPolicy; | ||
|
||
/// This class is for Firebase services to handle experiments updates to Firebase Analytics. | ||
/// Experiments can be set, cleared and updated through this controller. | ||
@interface FIRExperimentController : NSObject | ||
|
||
/// Returns the FIRExperimentController singleton. | ||
+ (FIRExperimentController *)sharedInstance; | ||
|
||
/// Updates the list of experiments. Experiments already existing in payloads are not affected, | ||
/// whose state and payload is preserved. This method compares whether the experiments have changed | ||
/// or not by their variant ID. This runs in a background queue. | ||
/// @param origin The originating service affected by the experiment, it is defined at | ||
/// Firebase Analytics FIREventOrigins.h. | ||
/// @param events A list of event names to be used for logging experiment lifecycle events, | ||
/// if they are not defined in the payload. | ||
/// @param policy The policy to handle new experiments when slots are full. | ||
/// @param lastStartTime The last known experiment start timestamp for this affected service. | ||
/// (Timestamps are specified by the number of seconds from 00:00:00 UTC on 1 | ||
/// January 1970.). | ||
/// @param payloads List of experiment metadata. | ||
- (void)updateExperimentsWithServiceOrigin:(NSString *)origin | ||
events:(FIRLifecycleEvents *)events | ||
policy:(ABTExperimentPayload_ExperimentOverflowPolicy)policy | ||
lastStartTime:(NSTimeInterval)lastStartTime | ||
payloads:(NSArray<NSData *> *)payloads; | ||
|
||
/// Returns the latest experiment start timestamp given a current latest timestamp and a list of | ||
/// experiment payloads. Timestamps are specified by the number of seconds from 00:00:00 UTC on 1 | ||
/// January 1970. | ||
/// @param timestamp Current latest experiment start timestamp. If not known, affected service | ||
/// should specify -1; | ||
/// @param payloads List of experiment metadata. | ||
- (NSTimeInterval)latestExperimentStartTimestampBetweenTimestamp:(NSTimeInterval)timestamp | ||
andPayloads:(NSArray<NSData *> *)payloads; | ||
@end | ||
|
||
NS_ASSUME_NONNULL_END |
46 changes: 46 additions & 0 deletions
46
Source/ABTesting/FirebaseABTesting.framework/Headers/FIRLifecycleEvents.h
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
#import <Foundation/Foundation.h> | ||
|
||
NS_ASSUME_NONNULL_BEGIN | ||
|
||
/// Default event name for when an experiment is set. | ||
extern NSString *const FIRSetExperimentEventName; | ||
/// Default event name for when an experiment is activated. | ||
extern NSString *const FIRActivateExperimentEventName; | ||
/// Default event name for when an experiment is cleared. | ||
extern NSString *const FIRClearExperimentEventName; | ||
/// Default event name for when an experiment times out for being activated. | ||
extern NSString *const FIRTimeoutExperimentEventName; | ||
/// Default event name for when an experiment is expired as it reaches the end of TTL. | ||
extern NSString *const FIRExpireExperimentEventName; | ||
|
||
/// An Experiment Lifecycle Event Object that specifies the name of the experiment event to be | ||
/// logged by Firebase Analytics. | ||
@interface FIRLifecycleEvents : NSObject | ||
|
||
/// Event name for when an experiment is set. It is default to FIRSetExperimentEventName and can be | ||
/// overriden. If experiment payload has a valid string of this field, always use experiment | ||
/// payload. | ||
@property(nonatomic, copy) NSString *setExperimentEventName; | ||
|
||
/// Event name for when an experiment is activated. It is default to FIRActivateExperimentEventName | ||
/// and can be overriden. If experiment payload has a valid string of this field, always use | ||
/// experiment payload. | ||
@property(nonatomic, copy) NSString *activateExperimentEventName; | ||
|
||
/// Event name for when an experiment is clearred. It is default to FIRClearExperimentEventName and | ||
/// can be overriden. If experiment payload has a valid string of this field, always use experiment | ||
/// payload. | ||
@property(nonatomic, copy) NSString *clearExperimentEventName; | ||
/// Event name for when an experiment is timeout from being STANDBY. It is default to | ||
/// FIRTimeoutExperimentEventName and can be overriden. If experiment payload has a valid string | ||
/// of this field, always use experiment payload. | ||
@property(nonatomic, copy) NSString *timeoutExperimentEventName; | ||
|
||
/// Event name when an experiment is expired when it reaches the end of its TTL. | ||
/// It is default to FIRExpireExperimentEventName and can be overriden. If experiment payload has a | ||
/// valid string of this field, always use experiment payload. | ||
@property(nonatomic, copy) NSString *expireExperimentEventName; | ||
|
||
@end | ||
|
||
NS_ASSUME_NONNULL_END |
2 changes: 2 additions & 0 deletions
2
Source/ABTesting/FirebaseABTesting.framework/Headers/FirebaseABTesting.h
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
#import "FIRExperimentController.h" | ||
#import "FIRLifecycleEvents.h" |
7 changes: 7 additions & 0 deletions
7
Source/ABTesting/FirebaseABTesting.framework/Modules/module.modulemap
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
framework module FirebaseABTesting { | ||
umbrella header "FirebaseABTesting.h" | ||
export * | ||
module * { export *} | ||
link "z" | ||
link framework "Security" | ||
link framework "SystemConfiguration"} |
Oops, something went wrong.