diff --git a/HockeySDK.podspec b/HockeySDK.podspec index a962826e86..ab9fa6294c 100644 --- a/HockeySDK.podspec +++ b/HockeySDK.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'HockeySDK' - s.version = '3.5.0-rc3' + s.version = '3.5.0' s.license = 'MIT' s.platform = :ios, '5.0' s.summary = 'Distribute beta apps and collect crash reports with HockeyApp.' diff --git a/README.md b/README.md index 38fb56e9de..1a4c9c970c 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ -## Version 3.5.0 RC 3 +## Version 3.5.0 -- [Changelog](http://www.hockeyapp.net/help/sdk/ios/3.5.0rc3/docs/docs/Changelog.html) +- [Changelog](http://www.hockeyapp.net/help/sdk/ios/3.5.0/docs/docs/Changelog.html) ## Introduction @@ -31,10 +31,10 @@ The main SDK class is `BITHockeyManager`. It initializes all modules and provide ## Installation & Setup -- [Installation & Setup](http://www.hockeyapp.net/help/sdk/ios/3.5.0rc3/docs/docs/Guide-Installation-Setup.html) (Recommended) -- [Installation & Setup Advanced](http://www.hockeyapp.net/help/sdk/ios/3.5.0rc3/docs/docs/Guide-Installation-Setup-Advanced.html) (Using Git submodule and Xcode sub-project) +- [Installation & Setup](http://www.hockeyapp.net/help/sdk/ios/3.5.0/docs/docs/Guide-Installation-Setup.html) (Recommended) +- [Installation & Setup Advanced](http://www.hockeyapp.net/help/sdk/ios/3.5.0/docs/docs/Guide-Installation-Setup-Advanced.html) (Using Git submodule and Xcode sub-project) - [Identify and authenticate users of Ad-Hoc or Enterprise builds](http://www.hockeyapp.net/help/sdk/ios/3.5.0rc3/docs/docs/HowTo-Authenticating-Users-on-iOS.html) -- [Migration from previous SDK Versions](http://www.hockeyapp.net/help/sdk/ios/3.5.0rc3/docs/docs/Guide-Migration-Kits.html) +- [Migration from previous SDK Versions](http://www.hockeyapp.net/help/sdk/ios/3.5.0/docs/docs/Guide-Migration-Kits.html) - [Mac Desktop Uploader](http://support.hockeyapp.net/kb/how-tos/how-to-upload-to-hockeyapp-on-a-mac) @@ -48,4 +48,4 @@ This documentation provides integrated help in Xcode for all public APIs and a s 3. Copy the content into ~`/Library/Developer/Shared/Documentation/DocSet` -The documentation is also available via the following URL: [http://hockeyapp.net/help/sdk/ios/3.5.0rc3/](http://hockeyapp.net/help/sdk/ios/3.5.0rc3/) +The documentation is also available via the following URL: [http://hockeyapp.net/help/sdk/ios/3.5.0/](http://hockeyapp.net/help/sdk/ios/3.5.0/) diff --git a/Support/buildnumber.xcconfig b/Support/buildnumber.xcconfig index 7cde4d6825..c10975ce40 100644 --- a/Support/buildnumber.xcconfig +++ b/Support/buildnumber.xcconfig @@ -1,7 +1,7 @@ #include "HockeySDK.xcconfig" -BUILD_NUMBER = 22 -VERSION_STRING = 3.5.0-RC3 +BUILD_NUMBER = 23 +VERSION_STRING = 3.5.0 GCC_PREPROCESSOR_DEFINITIONS = $(inherited) BITHOCKEY_VERSION="@\""$(VERSION_STRING)"\"" BIT_ARM_ARCHS = armv7 armv7s arm64 BIT_SIM_ARCHS = x86_64 i386 diff --git a/docs/Changelog-template.md b/docs/Changelog-template.md index 3ea26cac4c..89752be9a6 100644 --- a/docs/Changelog-template.md +++ b/docs/Changelog-template.md @@ -1,3 +1,69 @@ +## Version 3.5.0 + +- General + + - [NEW] Added support for iOS 7 + - [NEW] Added support for arm64 architecture + - [NEW] Added `BITStoreUpdateManager` for alerting the user of available App Store updates (disabled by default) + - [NEW] Added `BITAuthenticator` class for authorizing installations (Ad-Hoc/Enterprise builds only!) + - [NEW] Added support for apps starting in the background + - [NEW] Added possibility to build custom frameworks including/excluding specific modules from the static library (see `HockeySDKFeatureConfig.h`) + - [NEW] Added public access to the anonymous UUID that the SDK generates per app installation + - [NEW] Added possibility to overwrite SDK specific localization strings in the apps localization files + - [UPDATE] Updated localizations provided by [Wordcrafts.de](http://wordcrafts.de): + Chinese, Dutch, English, French, German, Hungarian, Italian, Japanese, Portuguese, Brazilian-Portuguese, Romanian, Russian, Spanish + - [UPDATE] User related data is now stored in the keychain instead of property files + - [UPDATE] SDK documentation improvements + - [BUGFIX] Fixed multiple compiler warnings + - [BUGFIX] Various UI updates and fixes +

+ +- Crash Reporting + + - [NEW] Integrated PLCrashReporter 1.2 beta 3 + - [NEW] Added optional support for Mach exceptions + - [NEW] Added support for arm64 + - [UPDATE] PLCrashReporter build with `BIT` namespace to avoid collisions + - [UPDATE] Crash reporting is automatically disabled when the app is invoked with the debugger! + - [UPDATE] Automatically add the users UDID or email to crash reports in Ad-Hoc/Enterprise builds if they are provided by BITAuthenticator +

+ +- Feedback + + - [NEW] New protocol to inform about incoming feedback messages, see `BITFeedbackManagerDelegate` + - [UPDATE] Added method in `BITFeedbackComposeViewControllerDelegate` to let the app know if the user submitted a new message or cancelled it +

+ +- App Store Updates + + - [NEW] Inform user when a new version is available in the App Store (optional, disabled by default) +

+ + +- Ad-Hoc/Enterprise Authentication + + - [NEW] `BITAuthenticator` identifies app installations, automatically disabled in App Store environments + - [NEW] `BITAuthenticator` can identify the user through: + - The email address of their HockeyApp account + - Login with their HockeyApp account (does not work with Facebook accounts!) + - Installation of the HockeyApp web-clip to provide the UDID (requires the app to handle URL callbacks) + - Web based login with their HockeyApp account + - [NEW] `BITAuthenticator` can require the authorization: + - Never + - On first app version launch + - Whenever the app comes into foreground (requires the device to have a working internet connection) + - [NEW] Option to customize the authentication flow + - [NEW] Possibility to use an existing URL scheme +

+ +- Ad-Hoc/Enterprise Updates + + - [UPDATE] Removed delegate for getting the UDID, please migrate to the new `BITAuthenticator` + - [NEW] In-app updates are now only offered if the device matches the minimum OS version requirement +

+ +--- + ## Version 3.5.0 RC 3 - General diff --git a/docs/Guide-Installation-Setup-Advanced-template.md b/docs/Guide-Installation-Setup-Advanced-template.md index 057242243e..6282f5e506 100644 --- a/docs/Guide-Installation-Setup-Advanced-template.md +++ b/docs/Guide-Installation-Setup-Advanced-template.md @@ -1,6 +1,6 @@ -## Version 3.5.0 RC 3 +## Version 3.5.0 -- [Changelog](http://www.hockeyapp.net/help/sdk/ios/3.5.0rc3/docs/docs/Changelog.html) +- [Changelog](http://www.hockeyapp.net/help/sdk/ios/3.5.0/docs/docs/Changelog.html) ## Introduction @@ -12,8 +12,7 @@ This document contains the following sections: - [Set up Git submodule](#download) - [Set up Xcode](#xcode) - [Modify Code](#modify) -- [Mac Desktop Uploader](#mac) -- [Xcode Documentation](#documentation) +- [Additional Options](#options) ## Requirements @@ -42,7 +41,7 @@ The SDK runs on devices with iOS 5.0 or higher. 3. Select your project in the `Project Navigator` (⌘+1). -4. Select your target. +4. Select your app target. 5. Select the tab `Build Phases`. @@ -58,49 +57,24 @@ The SDK runs on devices with iOS 5.0 or higher. -10. Expand `Copy Bundle Resource`. - -11. Drag `HockeySDKResources.bundle` from the `HockeySDK` sub-projects `Products` folder and drop into the `Copy Bundle Resource` section - -12. Select `Build Settings` - -13. Add the following `Header Search Path` - - `$(SRCROOT)/Vendor/HockeySDK/Classes` - -14. Create a new `Project.xcconfig` file, if you don't already have one (You can give it any name) - - **Note:** You can also add the required frameworks manually to your targets `Build Phases` an continue with step `17.` instead. - - a. Select your project. - - b. Select the tab `Info`. - - c. Expand `Configurations`. - - d. Select `Project.xcconfig` for all your configurations - - - -15. Open `Project.xcconfig` in the editor - -16. Add the following line: - - `#include "../Vendor/HockeySDK/Support/HockeySDK.xcconfig"` - - (Adjust the path depending where the `Project.xcconfig` file is located related to the Xcode project package) - - **Important note:** Check if you overwrite any of the build settings and add a missing `$(inherited)` entry on the projects build settings level, so the `HockeySDK.xcconfig` settings will be passed through successfully. - -17. If you are getting build warnings, then the `.xcconfig` setting wasn't included successfully or its settings in `Other Linker Flags` get ignored because `$(interited)` is missing on project or target level. Either add `$(inherited)` or link the following frameworks manually in `Link Binary With Libraries` under `Build Phases`: +10. Add the following system frameworks, if they are missing: - `CoreText` - `CoreGraphics` - `Foundation` - `QuartzCore` - - `Security` + - `Security` - `SystemConfiguration` - - `UIKit` + - `UIKit` +11. Expand `Copy Bundle Resource`. + +12. Drag `HockeySDKResources.bundle` from the `HockeySDK` sub-projects `Products` folder and drop into the `Copy Bundle Resource` section + +13. Select `Build Settings` + +14. Add the following `Header Search Path` + + `$(SRCROOT)/Vendor/HockeySDK/Classes` ## Modify Code @@ -113,8 +87,8 @@ The SDK runs on devices with iOS 5.0 or higher. 3. Let the AppDelegate implement the protocols `BITHockeyManagerDelegate`: - @interface AppDelegate(HockeyProtocols) {} - @end +
@interface AppDelegate(HockeyProtocols) < BITHockeyManagerDelegate > {}
+   @end
4. Search for the method `application:didFinishLaunchingWithOptions:` @@ -133,13 +107,14 @@ The SDK runs on devices with iOS 5.0 or higher. *Note:* The SDK is optimized to defer everything possible to a later time while making sure e.g. crashes on startup can also be caught and each module executes other code with a delay some seconds. This ensures that applicationDidFinishLaunching will process as fast as possible and the SDK will not block the startup sequence resulting in a possible kill by the watchdog process. - -## Mac Desktop Uploader + +## Additional Options + +### Mac Desktop Uploader The Mac Desktop Uploader can provide easy uploading of your app versions to HockeyApp. Check out the [installation tutorial](Guide-Installation-Mac-App). - -## Xcode Documentation +### Xcode Documentation This documentation provides integrated help in Xcode for all public APIs and a set of additional tutorials and HowTos. @@ -149,4 +124,41 @@ This documentation provides integrated help in Xcode for all public APIs and a s 3. Copy the content into ~`/Library/Developer/Shared/Documentation/DocSet` -The documentation is also available via the following URL: [http://hockeyapp.net/help/sdk/ios/3.5.0rc3/](http://hockeyapp.net/help/sdk/ios/3.5.0rc3/) +The documentation is also available via the following URL: [http://hockeyapp.net/help/sdk/ios/3.5.0/](http://hockeyapp.net/help/sdk/ios/3.5.0/) + +### Set up with xcconfig + +Instead of manually adding the missing frameworks, you can also use our bundled xcconfig file. + +1. Create a new `Project.xcconfig` file, if you don't already have one (You can give it any name) + + **Note:** You can also add the required frameworks manually to your targets `Build Phases` an continue with step `4.` instead. + + a. Select your project in the `Project Navigator` (⌘+1). + + b. Select the tab `Info`. + + c. Expand `Configurations`. + + d. Select `Project.xcconfig` for all your configurations + + + +2. Open `Project.xcconfig` in the editor + +3. Add the following line: + + `#include "../Vendor/HockeySDK/Support/HockeySDK.xcconfig"` + + (Adjust the path depending where the `Project.xcconfig` file is located related to the Xcode project package) + + **Important note:** Check if you overwrite any of the build settings and add a missing `$(inherited)` entry on the projects build settings level, so the `HockeySDK.xcconfig` settings will be passed through successfully. + +4. If you are getting build warnings, then the `.xcconfig` setting wasn't included successfully or its settings in `Other Linker Flags` get ignored because `$(inherited)` is missing on project or target level. Either add `$(inherited)` or link the following frameworks manually in `Link Binary With Libraries` under `Build Phases`: + - `CoreText` + - `CoreGraphics` + - `Foundation` + - `QuartzCore` + - `Security` + - `SystemConfiguration` + - `UIKit` diff --git a/docs/Guide-Installation-Setup-template.md b/docs/Guide-Installation-Setup-template.md index 62e11f1ec1..3bd5b840e0 100644 --- a/docs/Guide-Installation-Setup-template.md +++ b/docs/Guide-Installation-Setup-template.md @@ -1,6 +1,6 @@ -## Version 3.5.0 RC 3 +## Version 3.5.0 -- [Changelog](http://www.hockeyapp.net/help/sdk/ios/3.5.0rc3/docs/docs/Changelog.html) +- [Changelog](http://www.hockeyapp.net/help/sdk/ios/3.5.0/docs/docs/Changelog.html) ## Introduction @@ -12,8 +12,7 @@ This document contains the following sections: - [Download & Extract](#download) - [Set up Xcode](#xcode) - [Modify Code](#modify) -- [Mac Desktop Uploader](#mac) -- [Xcode Documentation](#documentation) +- [Additional Options](#options) ## Requirements @@ -42,35 +41,20 @@ The SDK runs on devices with iOS 5.0 or higher. 4. Select your project in the `Project Navigator` (⌘+1). -5. Select your project. +5. Select your app target. -6. Select the tab `Info`. +6. Select the tab `Build Phases`. -7. Expand `Configurations`. +7. Expand `Link Binary With Libraries`. -8. Select `HockeySDK.xcconfig` for all your configurations (if you don't already use a `.xcconfig` file) - - - - **Note:** You can also add the required frameworks manually to your targets `Build Phases` and continue with step `10.` instead. - -9. If you are already using a `.xcconfig` file, simply add the following line to it - - `#include "../Vendor/HockeySDK/Support/HockeySDK.xcconfig"` - - (Adjust the path depending where the `Project.xcconfig` file is located related to the Xcode project package) - - **Important note:** Check if you overwrite any of the build settings and add a missing `$(inherited)` entry on the projects build settings level, so the `HockeySDK.xcconfig` settings will be passed through successfully. - -10. If you are getting build warnings, then the `.xcconfig` setting wasn't included successfully or its settings in `Other Linker Flags` get ignored because `$(interited)` is missing on project or target level. Either add `$(inherited)` or link the following frameworks manually in `Link Binary With Libraries` under `Build Phases`: +8. Add the following system frameworks, if they are missing: - `CoreText` - `CoreGraphics` - `Foundation` - `QuartzCore` - `Security` - `SystemConfiguration` - - `UIKit` - + - `UIKit` ## Modify Code @@ -83,8 +67,8 @@ The SDK runs on devices with iOS 5.0 or higher. 3. Let the AppDelegate implement the protocols `BITHockeyManagerDelegate`: - @interface AppDelegate(HockeyProtocols) {} - @end +
@interface AppDelegate(HockeyProtocols) < BITHockeyManagerDelegate > {}
+   @end
4. Search for the method `application:didFinishLaunchingWithOptions:` @@ -103,17 +87,52 @@ The SDK runs on devices with iOS 5.0 or higher. *Note:* The SDK is optimized to defer everything possible to a later time while making sure e.g. crashes on startup can also be caught and each module executes other code with a delay some seconds. This ensures that applicationDidFinishLaunching will process as fast as possible and the SDK will not block the startup sequence resulting in a possible kill by the watchdog process. + +## Additional Options - -## Mac Desktop Uploader +### Mac Desktop Uploader The Mac Desktop Uploader can provide easy uploading of your app versions to HockeyApp. Check out the [installation tutorial](Guide-Installation-Mac-App). - -## Xcode Documentation +### Xcode Documentation This documentation provides integrated help in Xcode for all public APIs and a set of additional tutorials and HowTos. 1. Copy `de.bitstadium.HockeySDK-iOS-3.5.0.docset` into ~`/Library/Developer/Shared/Documentation/DocSet` -The documentation is also available via the following URL: [http://hockeyapp.net/help/sdk/ios/3.5.0rc3/](http://hockeyapp.net/help/sdk/ios/3.5.0rc3/) +The documentation is also available via the following URL: [http://hockeyapp.net/help/sdk/ios/3.5.0/](http://hockeyapp.net/help/sdk/ios/3.5.0/) + +### Set up with xcconfig + +Instead of manually adding the missing frameworks, you can also use our bundled xcconfig file. + +1. Select your project in the `Project Navigator` (⌘+1). + +2. Select your project. + +3. Select the tab `Info`. + +4. Expand `Configurations`. + +5. Select `HockeySDK.xcconfig` for all your configurations (if you don't already use a `.xcconfig` file) + + + + **Note:** You can also add the required frameworks manually to your targets `Build Phases` and continue with step `7.` instead. + +6. If you are already using a `.xcconfig` file, simply add the following line to it + + `#include "../Vendor/HockeySDK/Support/HockeySDK.xcconfig"` + + (Adjust the path depending where the `Project.xcconfig` file is located related to the Xcode project package) + + **Important note:** Check if you overwrite any of the build settings and add a missing `$(inherited)` entry on the projects build settings level, so the `HockeySDK.xcconfig` settings will be passed through successfully. + +7. If you are getting build warnings, then the `.xcconfig` setting wasn't included successfully or its settings in `Other Linker Flags` get ignored because `$(inherited)` is missing on project or target level. Either add `$(inherited)` or link the following frameworks manually in `Link Binary With Libraries` under `Build Phases`: + - `CoreText` + - `CoreGraphics` + - `Foundation` + - `QuartzCore` + - `Security` + - `SystemConfiguration` + - `UIKit`