diff --git a/Classes/BITCrashManager.m b/Classes/BITCrashManager.m index cf5922d105..0a6fbf8835 100644 --- a/Classes/BITCrashManager.m +++ b/Classes/BITCrashManager.m @@ -28,10 +28,14 @@ * OTHER DEALINGS IN THE SOFTWARE. */ +#import "HockeySDK.h" + +#if HOCKEYSDK_FEATURE_CRASH_REPORTER + #import #import #import -#import "HockeySDK.h" + #import "HockeySDKPrivate.h" #import "BITHockeyHelper.h" @@ -925,3 +929,6 @@ NSString *const kBITCrashManagerStatus = @"BITCrashManagerStatus"; @end + +#endif /* HOCKEYSDK_FEATURE_CRASH_REPORTER */ + diff --git a/Classes/BITFeedbackActivity.m b/Classes/BITFeedbackActivity.m index 4657f579ca..c7d9390a90 100644 --- a/Classes/BITFeedbackActivity.m +++ b/Classes/BITFeedbackActivity.m @@ -6,10 +6,14 @@ // // -#import "BITFeedbackActivity.h" +#import "HockeySDK.h" + +#if HOCKEYSDK_FEATURE_FEEDBACK #import "HockeySDKPrivate.h" -#import "HockeySDK.h" + +#import "BITFeedbackActivity.h" + #import "BITHockeyHelper.h" #import "BITFeedbackManagerPrivate.h" @@ -108,3 +112,5 @@ @end + +#endif /* HOCKEYSDK_FEATURE_FEEDBACK */ diff --git a/Classes/BITFeedbackComposeViewController.m b/Classes/BITFeedbackComposeViewController.m index 143af593a5..322f1e6838 100644 --- a/Classes/BITFeedbackComposeViewController.m +++ b/Classes/BITFeedbackComposeViewController.m @@ -28,6 +28,9 @@ #import "HockeySDK.h" + +#if HOCKEYSDK_FEATURE_FEEDBACK + #import "HockeySDKPrivate.h" #import "BITFeedbackManagerPrivate.h" @@ -301,3 +304,4 @@ @end +#endif /* HOCKEYSDK_FEATURE_FEEDBACK */ diff --git a/Classes/BITFeedbackListViewController.m b/Classes/BITFeedbackListViewController.m index c858dddcfb..0b2e6b226b 100644 --- a/Classes/BITFeedbackListViewController.m +++ b/Classes/BITFeedbackListViewController.m @@ -28,6 +28,9 @@ #import "HockeySDK.h" + +#if HOCKEYSDK_FEATURE_FEEDBACK + #import "HockeySDKPrivate.h" #import "BITFeedbackManagerPrivate.h" @@ -756,3 +759,5 @@ } @end + +#endif /* HOCKEYSDK_FEATURE_FEEDBACK */ diff --git a/Classes/BITFeedbackManager.m b/Classes/BITFeedbackManager.m index 78176a24ae..631612acd0 100644 --- a/Classes/BITFeedbackManager.m +++ b/Classes/BITFeedbackManager.m @@ -28,6 +28,9 @@ #import "HockeySDK.h" + +#if HOCKEYSDK_FEATURE_FEEDBACK + #import "HockeySDKPrivate.h" #import "BITFeedbackManager.h" @@ -938,3 +941,5 @@ } @end + +#endif /* HOCKEYSDK_FEATURE_FEEDBACK */ diff --git a/Classes/BITFeedbackManagerPrivate.h b/Classes/BITFeedbackManagerPrivate.h index cbf9684a55..679a2f34ab 100644 --- a/Classes/BITFeedbackManagerPrivate.h +++ b/Classes/BITFeedbackManagerPrivate.h @@ -28,9 +28,9 @@ * OTHER DEALINGS IN THE SOFTWARE. */ -#import -#import "BITFeedbackMessage.h" +#if HOCKEYSDK_FEATURE_FEEDBACK +#import "BITFeedbackMessage.h" @interface BITFeedbackManager () { } @@ -94,3 +94,5 @@ - (void)deleteAllMessages; @end + +#endif /* HOCKEYSDK_FEATURE_FEEDBACK */ diff --git a/Classes/BITFeedbackUserDataViewController.m b/Classes/BITFeedbackUserDataViewController.m index afffe1b95b..ddfb6d1a05 100644 --- a/Classes/BITFeedbackUserDataViewController.m +++ b/Classes/BITFeedbackUserDataViewController.m @@ -28,6 +28,9 @@ #import "HockeySDK.h" + +#if HOCKEYSDK_FEATURE_FEEDBACK + #import "HockeySDKPrivate.h" #import "BITFeedbackUserDataViewController.h" @@ -259,3 +262,5 @@ @end + +#endif /* HOCKEYSDK_FEATURE_FEEDBACK */ diff --git a/Classes/BITHockeyManager.m b/Classes/BITHockeyManager.m index e4c7038e48..049c294fe8 100644 --- a/Classes/BITHockeyManager.m +++ b/Classes/BITHockeyManager.m @@ -32,19 +32,31 @@ #import "BITHockeyManagerPrivate.h" #import "BITHockeyBaseManagerPrivate.h" + +#if HOCKEYSDK_FEATURE_UPDATES #import "BITUpdateManagerPrivate.h" +#endif /* HOCKEYSDK_FEATURE_UPDATES */ + +#if HOCKEYSDK_FEATURE_STORE_UPDATES #import "BITStoreUpdateManagerPrivate.h" +#endif /* HOCKEYSDK_FEATURE_STORE_UPDATES */ + +#if HOCKEYSDK_FEATURE_FEEDBACK #import "BITFeedbackManagerPrivate.h" +#endif /* HOCKEYSDK_FEATURE_FEEDBACK */ + +#if HOCKEYSDK_FEATURE_AUTHENTICATOR #import "BITAuthenticator_Private.h" #import "BITHockeyAppClient.h" +#endif /* HOCKEYSDK_FEATURE_AUTHENTICATOR */ @interface BITHockeyManager () - (BOOL)shouldUseLiveIdentifier; -#if JIRA_MOBILE_CONNECT_SUPPORT_ENABLED +#if HOCKEYSDK_FEATURE_JIRA_MOBILE_CONNECT - (void)configureJMC; -#endif +#endif /* HOCKEYSDK_FEATURE_JIRA_MOBILE_CONNECT */ @end @@ -162,6 +174,7 @@ BITHockeyLog(@"INFO: Starting HockeyManager"); _startManagerIsInvoked = YES; +#if HOCKEYSDK_FEATURE_CRASH_REPORTER // start CrashManager if (![self isCrashManagerDisabled]) { BITHockeyLog(@"INFO: Start CrashManager"); @@ -170,7 +183,9 @@ } [_crashManager startManager]; } +#endif /* HOCKEYSDK_FEATURE_CRASH_REPORTER */ +#if HOCKEYSDK_FEATURE_STORE_UPDATES // start StoreUpdateManager if ([self isStoreUpdateManagerEnabled]) { BITHockeyLog(@"INFO: Start StoreUpdateManager"); @@ -179,7 +194,9 @@ } [_storeUpdateManager performSelector:@selector(startManager) withObject:nil afterDelay:0.5f]; } - +#endif /* HOCKEYSDK_FEATURE_STORE_UPDATES */ + +#if HOCKEYSDK_FEATURE_FEEDBACK // start FeedbackManager if (![self isFeedbackManagerDisabled]) { BITHockeyLog(@"INFO: Start FeedbackManager"); @@ -188,6 +205,7 @@ } [_feedbackManager performSelector:@selector(startManager) withObject:nil afterDelay:1.0f]; } +#endif /* HOCKEYSDK_FEATURE_FEEDBACK */ // start Authenticator if (![self isAppStoreEnvironment]) { @@ -201,41 +219,49 @@ [_authenticator startManager]; } +#if HOCKEYSDK_FEATURE_UPDATES // Setup UpdateManager if (![self isUpdateManagerDisabled] -#if JIRA_MOBILE_CONNECT_SUPPORT_ENABLED +#if HOCKEYSDK_FEATURE_JIRA_MOBILE_CONNECT || [[self class] isJMCPresent] -#endif +#endif /* HOCKEYSDK_FEATURE_JIRA_MOBILE_CONNECT */ ) { if ([self.authenticator installationIdentificationValidated]) { [self invokeStartUpdateManager]; } } +#endif /* HOCKEYSDK_FEATURE_UPDATES */ } +#if HOCKEYSDK_FEATURE_UPDATES - (void)setDisableUpdateManager:(BOOL)disableUpdateManager { if (_updateManager) { [_updateManager setDisableUpdateManager:disableUpdateManager]; } _disableUpdateManager = disableUpdateManager; } +#endif /* HOCKEYSDK_FEATURE_UPDATES */ +#if HOCKEYSDK_FEATURE_STORE_UPDATES - (void)setEnableStoreUpdateManager:(BOOL)enableStoreUpdateManager { if (_storeUpdateManager) { [_storeUpdateManager setEnableStoreUpdateManager:enableStoreUpdateManager]; } _enableStoreUpdateManager = enableStoreUpdateManager; } +#endif /* HOCKEYSDK_FEATURE_STORE_UPDATES */ +#if HOCKEYSDK_FEATURE_FEEDBACK - (void)setDisableFeedbackManager:(BOOL)disableFeedbackManager { if (_feedbackManager) { [_feedbackManager setDisableFeedbackManager:disableFeedbackManager]; } _disableFeedbackManager = disableFeedbackManager; } +#endif /* HOCKEYSDK_FEATURE_FEEDBACK */ - (void)setServerURL:(NSString *)aServerURL { @@ -244,15 +270,18 @@ aServerURL = [NSString stringWithFormat:@"%@/", aServerURL]; } +#if HOCKEYSDK_FEATURE_AUTHENTICATOR if (_serverURL != aServerURL) { _serverURL = [aServerURL copy]; _authenticator.hockeyAppClient.baseURL = [NSURL URLWithString:_serverURL ? _serverURL : BITHOCKEYSDK_URL]; } +#endif /* HOCKEYSDK_FEATURE_AUTHENTICATOR */ } #pragma mark - KVO +#if HOCKEYSDK_FEATURE_UPDATES - (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context { if ([keyPath isEqualToString:@"installationIdentificationValidated"] && [object valueForKey:@"installationIdentificationValidated"] ) { @@ -262,7 +291,7 @@ [self invokeStartUpdateManager]; } } -#if JIRA_MOBILE_CONNECT_SUPPORT_ENABLED +#if HOCKEYSDK_FEATURE_JIRA_MOBILE_CONNECT } else if (([object trackerConfig]) && ([[object trackerConfig] isKindOfClass:[NSDictionary class]])) { NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; NSMutableDictionary *trackerConfig = [[defaults valueForKey:@"BITTrackerConfigurations"] mutableCopy]; @@ -275,9 +304,10 @@ [defaults synchronize]; [self configureJMC]; -#endif +#endif /* HOCKEYSDK_FEATURE_JIRA_MOBILE_CONNECT */ } } +#endif /* HOCKEYSDK_FEATURE_UPDATES */ #pragma mark - Private Instance Methods @@ -290,6 +320,7 @@ } } +#if HOCKEYSDK_FEATURE_UPDATES - (void)invokeStartUpdateManager { if (_startUpdateManagerIsInvoked) return; @@ -305,6 +336,7 @@ } [_updateManager performSelector:@selector(startManager) withObject:nil afterDelay:0.5f]; } +#endif /* HOCKEYSDK_FEATURE_UPDATES */ - (BOOL)isSetUpOnMainThread { NSString *errorString = @"ERROR: This SDK has to be setup on the main thread!"; @@ -339,20 +371,28 @@ _startManagerIsInvoked = NO; if (_validAppIdentifier) { +#if HOCKEYSDK_FEATURE_CRASH_REPORTER BITHockeyLog(@"INFO: Setup CrashManager"); _crashManager = [[BITCrashManager alloc] initWithAppIdentifier:_appIdentifier isAppStoreEnvironemt:_appStoreEnvironment]; _crashManager.delegate = _delegate; +#endif /* HOCKEYSDK_FEATURE_CRASH_REPORTER */ +#if HOCKEYSDK_FEATURE_UPDATES BITHockeyLog(@"INFO: Setup UpdateManager"); _updateManager = [[BITUpdateManager alloc] initWithAppIdentifier:_appIdentifier isAppStoreEnvironemt:_appStoreEnvironment]; _updateManager.delegate = _delegate; +#endif /* HOCKEYSDK_FEATURE_UPDATES */ +#if HOCKEYSDK_FEATURE_STORE_UPDATES BITHockeyLog(@"INFO: Setup StoreUpdateManager"); _storeUpdateManager = [[BITStoreUpdateManager alloc] initWithAppIdentifier:_appIdentifier isAppStoreEnvironemt:_appStoreEnvironment]; +#endif /* HOCKEYSDK_FEATURE_STORE_UPDATES */ +#if HOCKEYSDK_FEATURE_FEEDBACK BITHockeyLog(@"INFO: Setup FeedbackManager"); _feedbackManager = [[BITFeedbackManager alloc] initWithAppIdentifier:_appIdentifier isAppStoreEnvironemt:_appStoreEnvironment]; _feedbackManager.delegate = _delegate; +#endif /* HOCKEYSDK_FEATURE_FEEDBACK */ BITHockeyLog(@"INFO: Setup Authenticator"); BITHockeyAppClient *client = [[BITHockeyAppClient alloc] initWithBaseURL:[NSURL URLWithString:_serverURL ? _serverURL : BITHOCKEYSDK_URL]]; @@ -360,7 +400,7 @@ _authenticator.hockeyAppClient = client; _authenticator.delegate = _delegate; -#if JIRA_MOBILE_CONNECT_SUPPORT_ENABLED +#if HOCKEYSDK_FEATURE_JIRA_MOBILE_CONNECT // Only if JMC is part of the project if ([[self class] isJMCPresent]) { BITHockeyLog(@"INFO: Setup JMC"); @@ -369,14 +409,14 @@ [[self class] disableJMCCrashReporter]; [self performSelector:@selector(configureJMC) withObject:nil afterDelay:0]; } -#endif +#endif /* HOCKEYSDK_FEATURE_JIRA_MOBILE_CONNECT */ } else { [self logInvalidIdentifier:@"app identifier"]; } } -#if JIRA_MOBILE_CONNECT_SUPPORT_ENABLED +#if HOCKEYSDK_FEATURE_JIRA_MOBILE_CONNECT #pragma mark - JMC @@ -475,6 +515,6 @@ } } -#endif +#endif /* HOCKEYSDK_FEATURE_JIRA_MOBILE_CONNECT */ @end diff --git a/Classes/BITStoreUpdateManager.m b/Classes/BITStoreUpdateManager.m index b88d9911db..f9ebd128b4 100644 --- a/Classes/BITStoreUpdateManager.m +++ b/Classes/BITStoreUpdateManager.m @@ -26,9 +26,12 @@ * OTHER DEALINGS IN THE SOFTWARE. */ -#import -#import #import "HockeySDK.h" + +#if HOCKEYSDK_FEATURE_STORE_UPDATES + +#import + #import "HockeySDKPrivate.h" #import "BITHockeyHelper.h" @@ -431,3 +434,5 @@ } @end + +#endif /* HOCKEYSDK_FEATURE_STORE_UPDATES */ diff --git a/Classes/BITStoreUpdateManagerPrivate.h b/Classes/BITStoreUpdateManagerPrivate.h index 0564bcf546..f44c100549 100644 --- a/Classes/BITStoreUpdateManagerPrivate.h +++ b/Classes/BITStoreUpdateManagerPrivate.h @@ -29,8 +29,7 @@ */ -#import - +#if HOCKEYSDK_FEATURE_STORE_UPDATES @interface BITStoreUpdateManager () { } @@ -58,3 +57,5 @@ - (void)checkForUpdateDelayed; @end + +#endif /* HOCKEYSDK_FEATURE_STORE_UPDATES */ diff --git a/Classes/BITUpdateManager.h b/Classes/BITUpdateManager.h index c227a72585..90c19e6e49 100644 --- a/Classes/BITUpdateManager.h +++ b/Classes/BITUpdateManager.h @@ -29,7 +29,6 @@ */ -#import #import "BITHockeyBaseManager.h" diff --git a/Classes/BITUpdateManager.m b/Classes/BITUpdateManager.m index 828fd81240..6ac1c1c4b0 100644 --- a/Classes/BITUpdateManager.m +++ b/Classes/BITUpdateManager.m @@ -28,9 +28,12 @@ * OTHER DEALINGS IN THE SOFTWARE. */ -#import -#import #import "HockeySDK.h" + +#if HOCKEYSDK_FEATURE_UPDATES + +#import + #import "HockeySDKPrivate.h" #import "BITHockeyHelper.h" @@ -922,3 +925,5 @@ typedef NS_ENUM(NSInteger, BITUpdateAlertViewTag) { } @end + +#endif /* HOCKEYSDK_FEATURE_UPDATES */ diff --git a/Classes/BITUpdateManagerPrivate.h b/Classes/BITUpdateManagerPrivate.h index 661c1d601c..35a3d6a661 100644 --- a/Classes/BITUpdateManagerPrivate.h +++ b/Classes/BITUpdateManagerPrivate.h @@ -29,7 +29,9 @@ */ -#import +#import "HockeySDK.h" + +#if HOCKEYSDK_FEATURE_UPDATES /** TODO: * if during startup the auth-state is pending, we get never rid of the nag-alertview @@ -93,3 +95,5 @@ - (BOOL)hasNewerMandatoryVersion; @end + +#endif /* HOCKEYSDK_FEATURE_UPDATES */ diff --git a/Classes/BITUpdateViewController.m b/Classes/BITUpdateViewController.m index 608ff8ec61..5b86e85978 100644 --- a/Classes/BITUpdateViewController.m +++ b/Classes/BITUpdateViewController.m @@ -28,6 +28,11 @@ * OTHER DEALINGS IN THE SOFTWARE. */ +#import "HockeySDK.h" + +#if HOCKEYSDK_FEATURE_UPDATES + +#import "HockeySDKPrivate.h" #import #import "BITHockeyHelper.h" #import "BITAppVersionMetaInfo.h" @@ -35,9 +40,6 @@ #import "BITWebTableViewCell.h" #import "BITStoreButton.h" -#import "HockeySDK.h" -#import "HockeySDKPrivate.h" - #import "BITUpdateManagerPrivate.h" #import "BITUpdateViewControllerPrivate.h" #import "BITHockeyBaseManagerPrivate.h" @@ -548,3 +550,5 @@ } @end + +#endif /* HOCKEYSDK_FEATURE_UPDATES */ diff --git a/Classes/BITUpdateViewControllerPrivate.h b/Classes/BITUpdateViewControllerPrivate.h index d8c367274a..dfc58d633b 100644 --- a/Classes/BITUpdateViewControllerPrivate.h +++ b/Classes/BITUpdateViewControllerPrivate.h @@ -28,7 +28,10 @@ * OTHER DEALINGS IN THE SOFTWARE. */ -#import +#import "HockeySDK.h" + +#if HOCKEYSDK_FEATURE_UPDATES + #import "BITStoreButton.h" typedef enum { @@ -53,3 +56,5 @@ typedef enum { @property (nonatomic, assign) AppStoreButtonState appStoreButtonState; @end + +#endif /* HOCKEYSDK_FEATURE_UPDATES */ diff --git a/Classes/HockeySDK.h b/Classes/HockeySDK.h index 15d77c4929..934f6fea58 100644 --- a/Classes/HockeySDK.h +++ b/Classes/HockeySDK.h @@ -30,26 +30,38 @@ #ifndef HockeySDK_h #define HockeySDK_h +#import "HockeySDKFeatureConfig.h" + #import "BITHockeyManager.h" #import "BITHockeyManagerDelegate.h" +#if HOCKEYSDK_FEATURE_CRASH_REPORTER #import "BITCrashManager.h" #import "BITCrashManagerDelegate.h" +#endif /* HOCKEYSDK_FEATURE_CRASH_REPORTER */ +#if HOCKEYSDK_FEATURE_UPDATES || HOCKEYSDK_FEATURE_JIRA_MOBILE_CONNECT #import "BITUpdateManager.h" #import "BITUpdateManagerDelegate.h" #import "BITUpdateViewController.h" +#endif /* HOCKEYSDK_FEATURE_UPDATES */ +#if HOCKEYSDK_FEATURE_STORE_UPDATES #import "BITStoreUpdateManager.h" #import "BITStoreUpdateManagerDelegate.h" +#endif /* HOCKEYSDK_FEATURE_STORE_UPDATES */ +#if HOCKEYSDK_FEATURE_FEEDBACK #import "BITFeedbackManager.h" #import "BITFeedbackActivity.h" #import "BITFeedbackComposeViewController.h" #import "BITFeedbackComposeViewControllerDelegate.h" #import "BITFeedbackListViewController.h" +#endif /* HOCKEYSDK_FEATURE_FEEDBACK */ +#if HOCKEYSDK_FEATURE_AUTHENTICATOR #import "BITAuthenticator.h" +#endif // Notification message which HockeyManager is listening to, to retry requesting updated from the server #define BITHockeyNetworkDidBecomeReachableNotification @"BITHockeyNetworkDidBecomeReachable" diff --git a/Classes/HockeySDKFeatureConfig.h b/Classes/HockeySDKFeatureConfig.h new file mode 100644 index 0000000000..ac8d2e73a9 --- /dev/null +++ b/Classes/HockeySDKFeatureConfig.h @@ -0,0 +1,95 @@ +/* + * Author: Andreas Linde + * + * Copyright (c) 2013 HockeyApp, Bit Stadium GmbH. + * All rights reserved. + * + * Permission is hereby granted, free of charge, to any person + * obtaining a copy of this software and associated documentation + * files (the "Software"), to deal in the Software without + * restriction, including without limitation the rights to use, + * copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following + * conditions: + * + * The above copyright notice and this permission notice shall be + * included in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + * OTHER DEALINGS IN THE SOFTWARE. + */ + +#ifndef HockeySDK_HockeySDKFeatureConfig_h +#define HockeySDK_HockeySDKFeatureConfig_h + + +/** + * If true, include support for handling crash reports + * + * _Default_: Disabled + */ +#ifndef HOCKEYSDK_FEATURE_CRASH_REPORTER +# define HOCKEYSDK_FEATURE_CRASH_REPORTER 1 +#endif /* HOCKEYSDK_FEATURE_CRASH_REPORTER */ + + +/** + * If true, include support for managing user feedback + * + * _Default_: Disabled + */ +#ifndef HOCKEYSDK_FEATURE_FEEDBACK +# define HOCKEYSDK_FEATURE_FEEDBACK 1 +#endif /* HOCKEYSDK_FEATURE_FEEDBACK */ + + +/** + * If true, include support for informing the user about new updates pending in the App Store + * + * _Default_: Disabled + */ +#ifndef HOCKEYSDK_FEATURE_STORE_UPDATES +# define HOCKEYSDK_FEATURE_STORE_UPDATES 1 +#endif /* HOCKEYSDK_FEATURE_STORE_UPDATES */ + + +/** + * If true, include support for authentication installations for Ad-Hoc and Enterprise builds + * + * _Default_: Disabled + */ +#ifndef HOCKEYSDK_FEATURE_AUTHENTICATOR +# define HOCKEYSDK_FEATURE_AUTHENTICATOR 1 +#endif /* HOCKEYSDK_FEATURE_AUTHENTICATOR */ + + +/** + * If true, include support for handling in-app udpates for Ad-Hoc and Enterprise builds + * + * _Default_: Disabled + */ +#ifndef HOCKEYSDK_FEATURE_UPDATES +# define HOCKEYSDK_FEATURE_UPDATES 1 +#endif /* HOCKEYSDK_FEATURE_UPDATES */ + + +/** + * If true, include support for the Jira Mobile Connect SDK. + * + * @warning This requires Crash Reporting and Update Manager to be included! + * + * _Default_: Disabled + */ +#ifndef HOCKEYSDK_FEATURE_JIRA_MOBILE_CONNECT +# define HOCKEYSDK_FEATURE_JIRA_MOBILE_CONNECT 0 +#endif /* HOCKEYSDK_FEATURE_JIRA_MOBILE_CONNECT */ + + +#endif /* HockeySDK_HockeySDKFeatureConfig_h */ diff --git a/Classes/HockeySDKPrivate.h b/Classes/HockeySDKPrivate.h index 9ecd365846..aea864fc51 100644 --- a/Classes/HockeySDKPrivate.h +++ b/Classes/HockeySDKPrivate.h @@ -59,12 +59,6 @@ #define BITHOCKEYSDK_BUNDLE @"HockeySDKResources.bundle" #define BITHOCKEYSDK_URL @"https://sdk.hockeyapp.net/" -// Whether to compile in support for Jira Mobile Connect -// default is disabled -#ifndef JIRA_MOBILE_CONNECT_SUPPORT_ENABLED - #define JIRA_MOBILE_CONNECT_SUPPORT_ENABLED 0 -#endif - #define BITHockeyLog(fmt, ...) do { if([BITHockeyManager sharedHockeyManager].isDebugLogEnabled && ![BITHockeyManager sharedHockeyManager].isAppStoreEnvironment) { NSLog((@"[HockeySDK] %s/%d " fmt), __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__); }} while(0) #define BIT_RGBCOLOR(r,g,b) [UIColor colorWithRed:(r)/255.0 green:(g)/255.0 blue:(b)/255.0 alpha:1] @@ -88,6 +82,6 @@ BOOL BITValidateEmail(NSString *email); #define kBITTextLabelAlignmentRight NSTextAlignmentRight #define kBITLineBreakModeMiddleTruncation NSLineBreakByTruncatingMiddle -#endif +#endif /* __IPHONE_OS_VERSION_MIN_REQUIRED */ #endif //HockeySDK_HockeySDKPrivate_h diff --git a/Support/HockeySDK.xcodeproj/project.pbxproj b/Support/HockeySDK.xcodeproj/project.pbxproj index 51e0975a10..35427d97d6 100644 --- a/Support/HockeySDK.xcodeproj/project.pbxproj +++ b/Support/HockeySDK.xcodeproj/project.pbxproj @@ -106,6 +106,7 @@ 1E754E611621FBB70070AB92 /* BITCrashReportTextFormatter.m in Sources */ = {isa = PBXBuildFile; fileRef = 1E754E5B1621FBB70070AB92 /* BITCrashReportTextFormatter.m */; }; 1E7A45FC16F54FB5005B08F1 /* OCHamcrestIOS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1E7A45FA16F54FB5005B08F1 /* OCHamcrestIOS.framework */; }; 1E7A45FD16F54FB5005B08F1 /* OCMockitoIOS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1E7A45FB16F54FB5005B08F1 /* OCMockitoIOS.framework */; }; + 1E84DB3417E099BA00AC83FD /* HockeySDKFeatureConfig.h in Headers */ = {isa = PBXBuildFile; fileRef = 1E84DB3317E0977C00AC83FD /* HockeySDKFeatureConfig.h */; settings = {ATTRIBUTES = (Public, ); }; }; 1E94F9E116E91330006570AD /* BITStoreUpdateManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 1E94F9DF16E91330006570AD /* BITStoreUpdateManager.h */; }; 1E94F9E216E91330006570AD /* BITStoreUpdateManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 1E94F9E016E91330006570AD /* BITStoreUpdateManager.m */; }; 1E94F9E416E9136B006570AD /* BITStoreUpdateManagerPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 1E94F9E316E9136B006570AD /* BITStoreUpdateManagerPrivate.h */; }; @@ -256,6 +257,7 @@ 1E754E5B1621FBB70070AB92 /* BITCrashReportTextFormatter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BITCrashReportTextFormatter.m; sourceTree = ""; }; 1E7A45FA16F54FB5005B08F1 /* OCHamcrestIOS.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = OCHamcrestIOS.framework; sourceTree = ""; }; 1E7A45FB16F54FB5005B08F1 /* OCMockitoIOS.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = OCMockitoIOS.framework; sourceTree = ""; }; + 1E84DB3317E0977C00AC83FD /* HockeySDKFeatureConfig.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = HockeySDKFeatureConfig.h; sourceTree = ""; }; 1E94F9DF16E91330006570AD /* BITStoreUpdateManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BITStoreUpdateManager.h; sourceTree = ""; }; 1E94F9E016E91330006570AD /* BITStoreUpdateManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BITStoreUpdateManager.m; sourceTree = ""; }; 1E94F9E316E9136B006570AD /* BITStoreUpdateManagerPrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BITStoreUpdateManagerPrivate.h; sourceTree = ""; }; @@ -546,6 +548,7 @@ 1EC69F5D1615001500808FD9 /* BITHockeyManagerPrivate.h */, 1E5955FA15B7877A00A03429 /* BITHockeyManagerDelegate.h */, 1E71509A15B5C76F004E88FF /* HockeySDK.h */, + 1E84DB3317E0977C00AC83FD /* HockeySDKFeatureConfig.h */, ); name = Classes; path = ../Classes; @@ -625,6 +628,7 @@ 1EC69F601615001500808FD9 /* BITHockeyManagerPrivate.h in Headers */, E48A3DEC17B3ED1C00924C3D /* BITAuthenticator.h in Headers */, 1E754E601621FBB70070AB92 /* BITCrashReportTextFormatter.h in Headers */, + 1E84DB3417E099BA00AC83FD /* HockeySDKFeatureConfig.h in Headers */, 1EACC97B162F041E007578C5 /* BITAttributedLabel.h in Headers */, 1E0FEE28173BDB260061331F /* BITKeychainUtils.h in Headers */, 1E94F9E116E91330006570AD /* BITStoreUpdateManager.h in Headers */, diff --git a/docs/HowTo-Integrate-Atlassian-JMC-template.md b/docs/HowTo-Integrate-Atlassian-JMC-template.md index a71fd14668..347fbf2089 100644 --- a/docs/HowTo-Integrate-Atlassian-JMC-template.md +++ b/docs/HowTo-Integrate-Atlassian-JMC-template.md @@ -14,7 +14,7 @@ The binary distribution of HockeySDK does not provide this integration. You need 4. Double tab in the `HockeySDKLib` column and add the following two values $(inherited) - JIRA_MOBILE_CONNECT_SUPPORT_ENABLED=1 + HOCKEYSDK_FEATURE_JIRA_MOBILE_CONNECT=1 5. Setup JMC as described in the [JMC instructions](https://developer.atlassian.com/display/JMC/Enabling+JIRA+Mobile+Connect) 6. Sign in to HockeyApp