-
Notifications
You must be signed in to change notification settings - Fork 6
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
326 changed files
with
1,331 additions
and
5,235 deletions.
There are no files selected for viewing
Binary file modified
BIN
+963 KB
(7200%)
Crashlytics.framework/Versions/A/Crashlytics
100644 → 100755
Binary file not shown.
31 changes: 31 additions & 0 deletions
31
Crashlytics.framework/Versions/A/Headers/ANSCompatibility.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,31 @@ | ||
// | ||
// ANSCompatibility.h | ||
// AnswersKit | ||
// | ||
// Copyright (c) 2015 Crashlytics, Inc. All rights reserved. | ||
// | ||
|
||
#pragma once | ||
|
||
#if !__has_feature(nullability) | ||
#define nonnull | ||
#define nullable | ||
#define _Nullable | ||
#define _Nonnull | ||
#endif | ||
|
||
#ifndef NS_ASSUME_NONNULL_BEGIN | ||
#define NS_ASSUME_NONNULL_BEGIN | ||
#endif | ||
|
||
#ifndef NS_ASSUME_NONNULL_END | ||
#define NS_ASSUME_NONNULL_END | ||
#endif | ||
|
||
#if __has_feature(objc_generics) | ||
#define ANS_GENERIC_NSARRAY(type) NSArray<type> | ||
#define ANS_GENERIC_NSDICTIONARY(key_type,object_key) NSDictionary<key_type, object_key> | ||
#else | ||
#define ANS_GENERIC_NSARRAY(type) NSArray | ||
#define ANS_GENERIC_NSDICTIONARY(key_type,object_key) NSDictionary | ||
#endif |
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,210 @@ | ||
// | ||
// Answers.h | ||
// Crashlytics | ||
// | ||
// Copyright (c) 2015 Crashlytics, Inc. All rights reserved. | ||
// | ||
|
||
#import <Foundation/Foundation.h> | ||
#import "ANSCompatibility.h" | ||
|
||
NS_ASSUME_NONNULL_BEGIN | ||
|
||
/** | ||
* This class exposes the Answers Events API, allowing you to track key | ||
* user user actions and metrics in your app. | ||
*/ | ||
@interface Answers : NSObject | ||
|
||
/** | ||
* Log a Sign Up event to see users signing up for your app in real-time, understand how | ||
* many users are signing up with different methods and their success rate signing up. | ||
* | ||
* @param signUpMethodOrNil The method by which a user logged in, e.g. Twitter or Digits. | ||
* @param signUpSucceededOrNil The ultimate success or failure of the login | ||
* @param customAttributesOrNil A dictionary of custom attributes to associate with this event. | ||
*/ | ||
+ (void)logSignUpWithMethod:(nullable NSString *)signUpMethodOrNil | ||
success:(nullable NSNumber *)signUpSucceededOrNil | ||
customAttributes:(nullable ANS_GENERIC_NSDICTIONARY(NSString *, id) *)customAttributesOrNil; | ||
|
||
/** | ||
* Log an Log In event to see users logging into your app in real-time, understand how many | ||
* users are logging in with different methods and their success rate logging into your app. | ||
* | ||
* @param loginMethodOrNil The method by which a user logged in, e.g. email, Twitter or Digits. | ||
* @param loginSucceededOrNil The ultimate success or failure of the login | ||
* @param customAttributesOrNil A dictionary of custom attributes to associate with this event. | ||
*/ | ||
+ (void)logLoginWithMethod:(nullable NSString *)loginMethodOrNil | ||
success:(nullable NSNumber *)loginSucceededOrNil | ||
customAttributes:(nullable ANS_GENERIC_NSDICTIONARY(NSString *, id) *)customAttributesOrNil; | ||
|
||
/** | ||
* Log a Share event to see users sharing from your app in real-time, letting you | ||
* understand what content they're sharing from the type or genre down to the specific id. | ||
* | ||
* @param shareMethodOrNil The method by which a user shared, e.g. email, Twitter, SMS. | ||
* @param contentNameOrNil The human readable name for this piece of content. | ||
* @param contentTypeOrNil The type of content shared. | ||
* @param contentIdOrNil The unique identifier for this piece of content. Useful for finding the top shared item. | ||
* @param customAttributesOrNil A dictionary of custom attributes to associate with this event. | ||
*/ | ||
+ (void)logShareWithMethod:(nullable NSString *)shareMethodOrNil | ||
contentName:(nullable NSString *)contentNameOrNil | ||
contentType:(nullable NSString *)contentTypeOrNil | ||
contentId:(nullable NSString *)contentIdOrNil | ||
customAttributes:(nullable ANS_GENERIC_NSDICTIONARY(NSString *, id) *)customAttributesOrNil; | ||
|
||
/** | ||
* Log an Invite Event to track how users are inviting other users into | ||
* your application. | ||
* | ||
* @param inviteMethodOrNil The method of invitation, e.g. GameCenter, Twitter, email. | ||
* @param customAttributesOrNil A dictionary of custom attributes to associate with this event. | ||
*/ | ||
+ (void)logInviteWithMethod:(nullable NSString *)inviteMethodOrNil | ||
customAttributes:(nullable ANS_GENERIC_NSDICTIONARY(NSString *, id) *)customAttributesOrNil; | ||
|
||
/** | ||
* Log a Purchase event to see your revenue in real-time, understand how many users are making purchases, see which | ||
* items are most popular, and track plenty of other important purchase-related metrics. | ||
* | ||
* @param itemPriceOrNil The purchased item's price. | ||
* @param currencyOrNil The ISO4217 currency code. Example: USD | ||
* @param purchaseSucceededOrNil Was the purchase succesful or unsuccesful | ||
* @param itemNameOrNil The human-readable form of the item's name. Example: | ||
* @param itemTypeOrNil The type, or genre of the item. Example: Song | ||
* @param itemIdOrNil The machine-readable, unique item identifier Example: SKU | ||
* @param customAttributesOrNil A dictionary of custom attributes to associate with this purchase. | ||
*/ | ||
+ (void)logPurchaseWithPrice:(nullable NSDecimalNumber *)itemPriceOrNil | ||
currency:(nullable NSString *)currencyOrNil | ||
success:(nullable NSNumber *)purchaseSucceededOrNil | ||
itemName:(nullable NSString *)itemNameOrNil | ||
itemType:(nullable NSString *)itemTypeOrNil | ||
itemId:(nullable NSString *)itemIdOrNil | ||
customAttributes:(nullable ANS_GENERIC_NSDICTIONARY(NSString *, id) *)customAttributesOrNil; | ||
|
||
/** | ||
* Log a Level Start Event to track where users are in your game. | ||
* | ||
* @param levelNameOrNil The level name | ||
* @param customAttributesOrNil A dictionary of custom attributes to associate with this level start event. | ||
*/ | ||
+ (void)logLevelStart:(nullable NSString *)levelNameOrNil | ||
customAttributes:(nullable ANS_GENERIC_NSDICTIONARY(NSString *, id) *)customAttributesOrNil; | ||
|
||
/** | ||
* Log a Level End event to track how users are completing levels in your game. | ||
* | ||
* @param levelNameOrNil The name of the level completed, E.G. "1" or "Training" | ||
* @param scoreOrNil The score the user completed the level with. | ||
* @param levelCompletedSuccesfullyOrNil A boolean representing whether or not the level was completed succesfully. | ||
* @param customAttributesOrNil A dictionary of custom attributes to associate with this event. | ||
*/ | ||
+ (void)logLevelEnd:(nullable NSString *)levelNameOrNil | ||
score:(nullable NSNumber *)scoreOrNil | ||
success:(nullable NSNumber *)levelCompletedSuccesfullyOrNil | ||
customAttributes:(nullable ANS_GENERIC_NSDICTIONARY(NSString *, id) *)customAttributesOrNil; | ||
|
||
/** | ||
* Log an Add to Cart event to see users adding items to a shopping cart in real-time, understand how | ||
* many users start the purchase flow, see which items are most popular, and track plenty of other important | ||
* purchase-related metrics. | ||
* | ||
* @param itemPriceOrNil The purchased item's price. | ||
* @param currencyOrNil The ISO4217 currency code. Example: USD | ||
* @param itemNameOrNil The human-readable form of the item's name. Example: | ||
* @param itemTypeOrNil The type, or genre of the item. Example: Song | ||
* @param itemIdOrNil The machine-readable, unique item identifier Example: SKU | ||
* @param customAttributesOrNil A dictionary of custom attributes to associate with this event. | ||
*/ | ||
+ (void)logAddToCartWithPrice:(nullable NSDecimalNumber *)itemPriceOrNil | ||
currency:(nullable NSString *)currencyOrNil | ||
itemName:(nullable NSString *)itemNameOrNil | ||
itemType:(nullable NSString *)itemTypeOrNil | ||
itemId:(nullable NSString *)itemIdOrNil | ||
customAttributes:(nullable ANS_GENERIC_NSDICTIONARY(NSString *, id) *)customAttributesOrNil; | ||
|
||
/** | ||
* Log a Start Checkout event to see users moving through the purchase funnel in real-time, understand how many | ||
* users are doing this and how much they're spending per checkout, and see how it related to other important | ||
* purchase-related metrics. | ||
* | ||
* @param totalPriceOrNil The total price of the cart. | ||
* @param currencyOrNil The ISO4217 currency code. Example: USD | ||
* @param itemCountOrNil The number of items in the cart. | ||
* @param customAttributesOrNil A dictionary of custom attributes to associate with this event. | ||
*/ | ||
+ (void)logStartCheckoutWithPrice:(nullable NSDecimalNumber *)totalPriceOrNil | ||
currency:(nullable NSString *)currencyOrNil | ||
itemCount:(nullable NSNumber *)itemCountOrNil | ||
customAttributes:(nullable ANS_GENERIC_NSDICTIONARY(NSString *, id) *)customAttributesOrNil; | ||
|
||
/** | ||
* Log a Rating event to see users rating content within your app in real-time and understand what | ||
* content is most engaging, from the type or genre down to the specific id. | ||
* | ||
* @param ratingOrNil The integer rating given by the user. | ||
* @param contentNameOrNil The human readable name for this piece of content. | ||
* @param contentTypeOrNil The type of content shared. | ||
* @param contentIdOrNil The unique identifier for this piece of content. Useful for finding the top shared item. | ||
* @param customAttributesOrNil A dictionary of custom attributes to associate with this event. | ||
*/ | ||
+ (void)logRating:(nullable NSNumber *)ratingOrNil | ||
contentName:(nullable NSString *)contentNameOrNil | ||
contentType:(nullable NSString *)contentTypeOrNil | ||
contentId:(nullable NSString *)contentIdOrNil | ||
customAttributes:(nullable ANS_GENERIC_NSDICTIONARY(NSString *, id) *)customAttributesOrNil; | ||
|
||
/** | ||
* Log a Content View event to see users viewing content within your app in real-time and | ||
* understand what content is most engaging, from the type or genre down to the specific id. | ||
* | ||
* @param contentNameOrNil The human readable name for this piece of content. | ||
* @param contentTypeOrNil The type of content shared. | ||
* @param contentIdOrNil The unique identifier for this piece of content. Useful for finding the top shared item. | ||
* @param customAttributesOrNil A dictionary of custom attributes to associate with this event. | ||
*/ | ||
+ (void)logContentViewWithName:(nullable NSString *)contentNameOrNil | ||
contentType:(nullable NSString *)contentTypeOrNil | ||
contentId:(nullable NSString *)contentIdOrNil | ||
customAttributes:(nullable ANS_GENERIC_NSDICTIONARY(NSString *, id) *)customAttributesOrNil; | ||
|
||
/** | ||
* Log a Search event allows you to see users searching within your app in real-time and understand | ||
* exactly what they're searching for. | ||
* | ||
* @param queryOrNil The user's query. | ||
* @param customAttributesOrNil A dictionary of custom attributes to associate with this event. | ||
*/ | ||
+ (void)logSearchWithQuery:(nullable NSString *)queryOrNil | ||
customAttributes:(nullable ANS_GENERIC_NSDICTIONARY(NSString *, id) *)customAttributesOrNil; | ||
|
||
/** | ||
* Log a Custom Event to see user actions that are uniquely important for your app in real-time, to see how often | ||
* they're performing these actions with breakdowns by different categories you add. Use a human-readable name for | ||
* the name of the event, since this is how the event will appear in Answers. | ||
* | ||
* @param eventName The human-readable name for the event. | ||
* @param customAttributesOrNil A dictionary of custom attributes to associate with this event. Attribute keys | ||
* must be <code>NSString</code> and and values must be <code>NSNumber</code> or <code>NSString</code>. | ||
* @discussion How we treat <code>NSNumbers</code>: | ||
* We will provide information about the distribution of values over time. | ||
* | ||
* How we treat <code>NSStrings</code>: | ||
* NSStrings are used as categorical data, allowing comparison across different category values. | ||
* Strings are limited to a maximum length of 100 characters, attributes over this length will be | ||
* truncated. | ||
* | ||
* When tracking the Tweet views to better understand user engagement, sending the tweet's length | ||
* and the type of media present in the tweet allows you to track how tweet length and the type of media influence | ||
* engagement. | ||
*/ | ||
+ (void)logCustomEventWithName:(NSString *)eventName | ||
customAttributes:(nullable ANS_GENERIC_NSDICTIONARY(NSString *, id) *)customAttributesOrNil; | ||
|
||
@end | ||
|
||
NS_ASSUME_NONNULL_END |
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,33 @@ | ||
// | ||
// CLSAttributes.h | ||
// Crashlytics | ||
// | ||
// Copyright (c) 2015 Crashlytics, Inc. All rights reserved. | ||
// | ||
|
||
#pragma once | ||
|
||
#define CLS_DEPRECATED(x) __attribute__ ((deprecated(x))) | ||
|
||
#if !__has_feature(nullability) | ||
#define nonnull | ||
#define nullable | ||
#define _Nullable | ||
#define _Nonnull | ||
#endif | ||
|
||
#ifndef NS_ASSUME_NONNULL_BEGIN | ||
#define NS_ASSUME_NONNULL_BEGIN | ||
#endif | ||
|
||
#ifndef NS_ASSUME_NONNULL_END | ||
#define NS_ASSUME_NONNULL_END | ||
#endif | ||
|
||
#if __has_feature(objc_generics) | ||
#define CLS_GENERIC_NSARRAY(type) NSArray<type> | ||
#define CLS_GENERIC_NSDICTIONARY(key_type,object_key) NSDictionary<key_type, object_key> | ||
#else | ||
#define CLS_GENERIC_NSARRAY(type) NSArray | ||
#define CLS_GENERIC_NSDICTIONARY(key_type,object_key) NSDictionary | ||
#endif |
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,64 @@ | ||
// | ||
// CLSLogging.h | ||
// Crashlytics | ||
// | ||
// Copyright (c) 2015 Crashlytics, Inc. All rights reserved. | ||
// | ||
#ifdef __OBJC__ | ||
#import "CLSAttributes.h" | ||
#import <Foundation/Foundation.h> | ||
|
||
NS_ASSUME_NONNULL_BEGIN | ||
#endif | ||
|
||
|
||
|
||
/** | ||
* | ||
* The CLS_LOG macro provides as easy way to gather more information in your log messages that are | ||
* sent with your crash data. CLS_LOG prepends your custom log message with the function name and | ||
* line number where the macro was used. If your app was built with the DEBUG preprocessor macro | ||
* defined CLS_LOG uses the CLSNSLog function which forwards your log message to NSLog and CLSLog. | ||
* If the DEBUG preprocessor macro is not defined CLS_LOG uses CLSLog only. | ||
* | ||
* Example output: | ||
* -[AppDelegate login:] line 134 $ login start | ||
* | ||
* If you would like to change this macro, create a new header file, unset our define and then define | ||
* your own version. Make sure this new header file is imported after the Crashlytics header file. | ||
* | ||
* #undef CLS_LOG | ||
* #define CLS_LOG(__FORMAT__, ...) CLSNSLog... | ||
* | ||
**/ | ||
#ifdef __OBJC__ | ||
#ifdef DEBUG | ||
#define CLS_LOG(__FORMAT__, ...) CLSNSLog((@"%s line %d $ " __FORMAT__), __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__) | ||
#else | ||
#define CLS_LOG(__FORMAT__, ...) CLSLog((@"%s line %d $ " __FORMAT__), __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__) | ||
#endif | ||
#endif | ||
|
||
/** | ||
* | ||
* Add logging that will be sent with your crash data. This logging will not show up in the system.log | ||
* and will only be visible in your Crashlytics dashboard. | ||
* | ||
**/ | ||
|
||
#ifdef __OBJC__ | ||
OBJC_EXTERN void CLSLog(NSString *format, ...) NS_FORMAT_FUNCTION(1,2); | ||
OBJC_EXTERN void CLSLogv(NSString *format, va_list ap) NS_FORMAT_FUNCTION(1,0); | ||
|
||
/** | ||
* | ||
* Add logging that will be sent with your crash data. This logging will show up in the system.log | ||
* and your Crashlytics dashboard. It is not recommended for Release builds. | ||
* | ||
**/ | ||
OBJC_EXTERN void CLSNSLog(NSString *format, ...) NS_FORMAT_FUNCTION(1,2); | ||
OBJC_EXTERN void CLSNSLogv(NSString *format, va_list ap) NS_FORMAT_FUNCTION(1,0); | ||
|
||
|
||
NS_ASSUME_NONNULL_END | ||
#endif |
Oops, something went wrong.