62 Commits

Author SHA1 Message Date
Andreas Linde
bc9ee21078 Only check for updates when the app becomes active and was actually in the background previously 2013-09-24 17:24:45 +02:00
Stephan Diederich
c2c6558687 redo BITAuthenticator interface
given the good feedback we got, this is take 2
of the BITAuthenticator interface.
It's simplified, cleaned up and now allows full
control over the authentication process.
Major changes:
* manual mode
  Authenticator provides the bits to show the
  viewController to identify the user as well as to
  trigger validation on behalf of the developer.
* process separation
  identification and app-usage-restriction are now
  2 completely separated things.
* public identifier
  Authenticator now allows the developer to query
  parts of the information, e.g. the UDID or the user's
  emailaddy once identified
2013-09-23 23:15:56 +02:00
Andreas Linde
da76cc9f98 Instead of returning a nil view in the last commit, return an empty view controller 2013-09-19 12:55:10 +02:00
Andreas Linde
ff351edbf1 Make sure update checks are never don from the AppStore environment also if the Update UI wasn't removed from the release build 2013-09-19 12:51:55 +02:00
Andreas Linde
9e0db07308 Add support for background fetch in BITUpdateManager
Checks for updates will only be done if the app is in the foreground. This is just for double safety, since the BITAuthenticator already reports that the app is not validated in this case
2013-09-16 13:53:07 +02:00
Andreas Linde
67d56af15d Fix warnings when building with iOS 7 as deployment target 2013-09-12 11:26:19 +02:00
Andreas Linde
72255ee4f0 Remove customDeviceIdentifierForUpdateManager delegate
This is now replaced by BITAuthenticator for all iOS versions
2013-09-12 00:49:24 +02:00
Andreas Linde
11a8a14e4f Add support for excluding features at compile time
Features can be excluded/included at compile-time using #define statements, e.g. using `Preprocessor Macros`. These don't influence if the feature will actually be enabled, since that can also be done at runtime and some features are disabled automatically in the App Store or disabled by default in general.

The BITHockeyManager header file will still reference all modules, but accessing the modules will not be possible if excluded from the library.

Value of 1 includes the feature into the static library, 0 will exclude the feature from the static library.

Defaults:

Crash Reporting: HOCKEYSDK_FEATURE_CRASH_REPORTER 1
Feedback: HOCKEYSDK_FEATURE_FEEDBACK 1
App Store Updates: HOCKEYSDK_FEATURE_STORE_UPDATES 1 (This feature is disabled by default in code!)
Authenticator: HOCKEYSDK_FEATURE_AUTHENTICATOR 1
Beta Updates: HOCKEYSDK_FEATURE_UPDATES 1
Jira Mobile Connect: HOCKEYSDK_FEATURE_JIRA_MOBILE_CONNECT 0
2013-09-11 19:18:21 +02:00
Andreas Linde
9e4d4481e8 Some more updates to check for beta updates only if the installation is authenticated 2013-09-11 15:44:21 +02:00
Andreas Linde
d93da3ee32 More authenticator integration
- Only start the updateManager if the installation is authenticated (not yet tested)
- Provide the installation data to the updateManager requests
- Some more documentation
- Authenticator defaults to BITAuthenticatorAuthTypeUDIDProvider and BITAuthenticatorValidationTypeNever
- Reset usage time if installation identification changes (not yet tested)
2013-09-11 14:05:09 +02:00
Andreas Linde
43db55de17 Add support for minimum OS Version check
App versions that require a newer OS Version than the current device provides will be ignored.
2013-09-09 01:26:49 +02:00
Andreas Linde
fa009300cf Don't set the barStyle for the Update view navigation bar to black in iOS 7 or later 2013-08-17 16:33:36 +02:00
Andreas Linde
2e24f654c4 Remove UUID based authorization feature, since UUIDs are completely removed in iOS7
A new auth feature will be added, that is based on HockeyApp user accounts
2013-08-16 22:18:28 +02:00
Stephan Diederich
03081b4bcd replace numbers with an enum
* use an enum instead of plain numbers
* move used method below the using method
2013-07-27 15:24:52 +02:00
Andreas Linde
93c2f05fac Use Keychain for some data
- Added SFHFKeyChainUtils with BIT prefix
- Save username, email or userid (if provided by the app or the user) in the keychain instead of user defaults or property files
2013-05-09 16:45:58 +02:00
Stefan Haubold
eefa48846a fixed deprecation warning for NSString UIKit Constants with iOS6 deployment target 2013-02-20 14:03:42 +01:00
Peter Steinberger
e1d6515b2a Fixes several typos. 2013-01-20 13:01:35 +01:00
Andreas Linde
e0e338ac5a Merge branch 'develop' of github.com:bitstadium/HockeySDK-iOS into develop 2013-01-09 16:55:10 +01:00
Andreas Linde
9f2f40bc06 Update copyright 2013-01-04 14:44:44 +01:00
Andreas Linde
cd9989bb09 Make sure connection is always cleared 2012-12-30 17:07:18 +01:00
Andreas Linde
6b948a8d13 Make sure json serialization never gets a nil value, otherwise it crashes 2012-11-28 19:02:37 +01:00
Andreas Linde
7e94d45acb Add support for in-app-updates without changing the version string 2012-10-30 20:10:41 +01:00
Andreas Linde
90f4b017af Update Update view presentation 2012-10-30 17:42:23 +01:00
Andreas Linde
d8f61f363a Remove option to change version update compare style 2012-10-25 22:19:06 +02:00
Andreas Linde
a14fa23f28 Convert to ARC 2012-10-23 16:22:23 +02:00
Andreas Linde
aee5c4adda Update update view to be more iOS 6 like
Not completely finished yet
2012-10-22 01:08:26 +02:00
Andreas Linde
59a0319ea9 Update appName handling 2012-10-19 17:18:10 +02:00
Andreas Linde
e6d76ca364 Use the proper default app name in the Update View Controller 2012-10-19 13:49:01 +02:00
Andreas Linde
b486b8142c Add more helpers for getting app name and making a screenshot
Screenshot is not yet used.
2012-10-18 20:08:22 +02:00
Andreas Linde
eb05becb5b Remove JSON pre iOS5 lib support, always use NSJsonSerialization 2012-10-16 02:10:37 +02:00
Andreas Linde
9b8f51fe5f Restructure project targets and binary distribution target
- Use one common static lib target
- create embeddedFramework as binary distribution including docset in one zip
- Add HockeySDK.xcconfig for easier build setting setup
- Move everything into a single directory, too many problems making binary and subproject work without requing recursive header search paths
- Documentation update pending
2012-10-07 21:49:47 +02:00
Andreas Linde
1a71aa2ea5 Initial Feedback component
- First implementation on feedback, not finished yet!
- Move all components into their own subdirectory
- Restructure common delegates into BITHockeyManagerDelegate
- Restructure common component methods into new superclass (not finished yet)
2012-09-28 12:30:19 +02:00
Andreas Linde
3e1ee32a02 Make sure the expiry blocking UI isn't added over and over again 2012-09-25 11:55:06 +02:00
Andreas Linde
c60a0604fc Fix expiryDate property not being taken care of correctly 2012-09-25 11:38:53 +02:00
Stefan Haubold
a577d2fe3b refactored didBecomeActive notification handling 2012-09-12 23:56:35 +02:00
Andreas Linde
550bca42c1 Don't check for authorization if run from the iOS simulator 2012-09-05 11:57:53 +02:00
Andreas Linde
3d4d0bc719 Fix Re-entering the app doesn't trigger check for updates
https://github.com/bitstadium/HockeySDK-iOS/issues/4
2012-08-31 15:30:38 +02:00
Andreas Linde
6967748148 Remove NSString and UIImage categories, so the static library doesn't require the linker flag -all_load
The flag shouldn't be required, and worked in the demo project absolutely fine. But from now to then there was an Xcode bug that made it required again and some non reproducible scenarios where reported by users where it doesn't work without the flag. To fix this for always and forever, we don't use categories any more.
2012-08-30 15:16:16 +02:00
Andreas Linde
1f840d909c More fixes for UpdateManager.checkForUpdateOnLaunch and UpdateManager.checkForTracker
- checkForUpdateOnLaunch was not used when it should
- checkForTracker should still work, if UpdateManager is disabled! (This needs to be refactored in a future version)
- Also fixes sending two update check requests on startup instead of only 1
- Also make sure that the requests are really send if checkForTracker is enabled, no matter if updateManager is disabled or checkForUpdateOnLaunch is disabled, but don't show the update alert in those cases
- Don't send usage information when run from the app store and checkForTracker is enabled
2012-08-22 01:13:46 +02:00
Andreas Linde
569833f65e Fix setting UpdateManager.checkForUpdateOnLaunch to NO disabling usage tracking and expiry check not working 2012-08-22 00:16:30 +02:00
Andreas Linde
a227ff9f7a Fix disableUpdateManager not working as advertised
This bug did not affect the automatic disabling of the module when run from the App Store! That one was and is working as advertised.
2012-08-21 23:54:13 +02:00
Andreas Linde
02a215be6d If the server reports no versions available for update process, don't report this as an error 2012-08-20 13:30:23 +02:00
Andreas Linde
a0f41065a8 Add some more info to log message to more easily classify them 2012-08-20 13:28:33 +02:00
Andreas Linde
28c9480da7 Show [HockeySDK] prefix on all NSLog messages 2012-08-20 13:14:29 +02:00
Andreas Linde
660c3083c9 Fix crash manager not using delegates, because the delegate is not set yet 2012-08-09 00:31:27 +02:00
Andreas Linde
80dda70552 Use localized app name for dialogs 2012-08-07 16:14:24 +02:00
Andreas Linde
da2bb59c17 For expiry UI use the same UI as for authorization
- alert is fallback if window cannot be found
- default view on screen, locking image and text
2012-08-07 12:57:58 +02:00
Andreas Linde
12c981f923 New option to set expiry date for the app
Uses neverending UIAlertView by default, can be exchanged by implementing a new delegate. Automatically disabled when the app is running from the App Store.
2012-08-07 02:13:41 +02:00
Andreas Linde
9859335f64 Add option to change the server URL
And fix a bug with the disable properties
2012-08-06 14:37:27 +02:00
Andreas Linde
f3c5b8b5e6 Fix some compiler warnings
These seem to appear if the project is ARC based, even though this lib is non ARC as of now
2012-08-02 12:32:40 +02:00