diff --git a/Documentation/Changelog.md b/Documentation/Changelog.md
index 296d027..3f907bb 100644
--- a/Documentation/Changelog.md
+++ b/Documentation/Changelog.md
@@ -1,4 +1,41 @@
-###Changelog:###
+## Changelog
+
+### 5.0.0
+
+Upgrade to HockeySDK for Android 5.0.2.
+
+This release comes with one major breaking change. HockeySDK 5.0.0 raises the minimum API level to 15.
+In addition, we no longer support restricting builds by device id. The reason is that, with Android O, `ANDROID_ID` no longer ensures a consistent way of identification of a user.
+
+To be ready for Android O, HockeySDK-Android now limits the `WRITE_EXTERNAL_STORAGE` permission with the `maxSdkVersion` filter. In some use cases, e.g. where an app contains a dependency that requires this permission, `maxSdkVersion` makes it impossible for those dependencies to grant or request the permission. The solution for those cases is to declare the `tools:node="replace"` manifest merging strategy later in the dependency tree:
+
+``````
+
+#### Full changelog
+
+In addition, this release contains the following changes:
+
+* [IMPROVEMENT] Support for Android O.
+* [IMPROVEMENT] Code scans no longer trigger warnings related to usage of `ANDROID_ID` as we are no longer using it.
+* [IMPROVEMENT] The SDK supports Android Strict Mode way better as it no longer violates it.
+* [IMPROVEMENT] We've improved the way we send Feedback attachments.
+* [IMPROVEMENT] The SDK no longer caches information about in-app updates to make sure updates are available immediately. The iOS SDK has behaved like this for a while and we decided to align the behavior across SDKs.
+* [IMPROVEMENT] Add the ability to when to show the UpdateFragment [#280](https://github.com/bitstadium/HockeySDK-Android/issues/280).
+* [IMPROVEMENT] Retrieving the last crash details is now asynchronous.
+* [BUGFIX] Metrics no longer leaks a connection.
+* [BUGFIX] It's no longer possible to circumvent the login UI by pressing the backbutton under certain circumstances [#278](https://github.com/bitstadium/HockeySDK-Android/pull/278).
+* [BUGFIX] Fix a crash in MetricsManager [#279](https://github.com/bitstadium/HockeySDK-Android/pull/279).
+* [BUGFIX] Fix authentication by email [#288](https://github.com/bitstadium/HockeySDK-Android/pull/288).
+* [BUGFIX] Fix a regression that was introduced in 5.0.0-beta.1 that prevented attaching screenshots to work [#289](https://github.com/bitstadium/HockeySDK-Android/pull/289).
+* [BUGFIX] Fix Feedback notifications on Android [#290](https://github.com/bitstadium/HockeySDK-Android/pull/290).
+* [IMPROVEMENT] Add the ability to when to show the UpdateFragment [#280](https://github.com/bitstadium/HockeySDK-Android/issues/280).
+* [IMPROVEMENT] `CrashManagerListener` now has `onNoCrashesFound()` to notify you in case no new crashes were found [#280](https://github.com/bitstadium/HockeySDK-Android/issues/280).
+* [DEPRECATION] We've removed the `onCrashesFound` callback in `CrashManagerListener` as it has been deprecated since HockeySDK 3.0.0.
+* [Bugfix] Fixes a NPE in `FeedbackActivity`. [#303](https://github.com/bitstadium/HockeySDK-Android/pull/303)
+* [Bugfix] Fixes a potential deadlock in `CrashManager`.[#https://github.com/bitstadium/HockeySDK-Android/pull/308]
+* [Improvement] Fix potential NPE when calling `MetricsManager.sessionTrackingEnabled()` before calling `MetricsManager.register(...)`. [#310](https://github.com/bitstadium/HockeySDK-Android/pull/310)
+* * [Bugfix] Fix a bug in the Italian translation. [#296](https://github.com/bitstadium/HockeySDK-Android/pull/296)
+* [Improvement] Use different timestamp format for crash date and app start time. [#297](https://github.com/bitstadium/HockeySDK-Android/pull/297)
### 1.1.6
@@ -6,7 +43,7 @@ Upgrade to HockeySDK for Android 4.1.5
* [FIX] Fix a resource leak in Sender.
* [FIX] Fix possibility to bypass authentication.
-* [FIX] Fix the progressbar when sending feedback.
+* [FIX] Fix the progress bar when sending feedback.
* [FIX] Fix the dates in the Feedback UI.
* [FIX] Fix ConcurrentModificationException in metrics feature.
* [FIX] Fix potential crash related to multi-threading in Channel.
diff --git a/ExampleGame/Assets/HockeyAppUnityAndroid/AndroidManifest.xml b/ExampleGame/Assets/HockeyAppUnityAndroid/AndroidManifest.xml
index 5f8c0d0..31eff70 100644
--- a/ExampleGame/Assets/HockeyAppUnityAndroid/AndroidManifest.xml
+++ b/ExampleGame/Assets/HockeyAppUnityAndroid/AndroidManifest.xml
@@ -1,11 +1,11 @@
+ android:versionCode="17"
+ android:versionName="5.0.0" >
diff --git a/ExampleGame/Assets/HockeyAppUnityAndroid/HockeyAppUnity-Scripts/HockeyAppAndroid.cs b/ExampleGame/Assets/HockeyAppUnityAndroid/HockeyAppUnity-Scripts/HockeyAppAndroid.cs
index fb0efe7..a19a32c 100644
--- a/ExampleGame/Assets/HockeyAppUnityAndroid/HockeyAppUnity-Scripts/HockeyAppAndroid.cs
+++ b/ExampleGame/Assets/HockeyAppUnityAndroid/HockeyAppUnity-Scripts/HockeyAppAndroid.cs
@@ -1,5 +1,5 @@
/*
- * Version: 1.1.6
+ * Version: 5.0.0
*/
using UnityEngine;
diff --git a/ExampleGame/Assets/HockeyAppUnityAndroid/HockeySDK-4.1.5.aar b/ExampleGame/Assets/HockeyAppUnityAndroid/HockeySDK-4.1.5.aar
deleted file mode 100644
index cc47805..0000000
Binary files a/ExampleGame/Assets/HockeyAppUnityAndroid/HockeySDK-4.1.5.aar and /dev/null differ
diff --git a/ExampleGame/Assets/HockeyAppUnityAndroid/HockeySDK-4.1.5.aar.meta b/ExampleGame/Assets/HockeyAppUnityAndroid/HockeySDK-4.1.5.aar.meta
deleted file mode 100644
index 678469e..0000000
--- a/ExampleGame/Assets/HockeyAppUnityAndroid/HockeySDK-4.1.5.aar.meta
+++ /dev/null
@@ -1,16 +0,0 @@
-fileFormatVersion: 2
-guid: 6d0e281a3eb05489da5408bc745d8558
-timeCreated: 1501524001
-licenseType: Pro
-PluginImporter:
- serializedVersion: 1
- iconMap: {}
- executionOrder: {}
- isPreloaded: 0
- platformData:
- Any:
- enabled: 1
- settings: {}
- userData:
- assetBundleName:
- assetBundleVariant:
diff --git a/ExampleGame/Assets/HockeyAppUnityAndroid/HockeySDK-5.0.2.aar b/ExampleGame/Assets/HockeyAppUnityAndroid/HockeySDK-5.0.2.aar
new file mode 100644
index 0000000..48649e3
Binary files /dev/null and b/ExampleGame/Assets/HockeyAppUnityAndroid/HockeySDK-5.0.2.aar differ
diff --git a/ExampleGame/Assets/HockeyAppUnityAndroid/HockeySDK-5.0.2.aar.meta b/ExampleGame/Assets/HockeyAppUnityAndroid/HockeySDK-5.0.2.aar.meta
new file mode 100644
index 0000000..3d55228
--- /dev/null
+++ b/ExampleGame/Assets/HockeyAppUnityAndroid/HockeySDK-5.0.2.aar.meta
@@ -0,0 +1,33 @@
+fileFormatVersion: 2
+guid: 92b859477e65344bbb773112831d9ceb
+timeCreated: 1506562305
+licenseType: Pro
+PluginImporter:
+ serializedVersion: 2
+ iconMap: {}
+ executionOrder: {}
+ isPreloaded: 0
+ isOverridable: 0
+ platformData:
+ data:
+ first:
+ Android: Android
+ second:
+ enabled: 1
+ settings: {}
+ data:
+ first:
+ Any:
+ second:
+ enabled: 0
+ settings: {}
+ data:
+ first:
+ Editor: Editor
+ second:
+ enabled: 0
+ settings:
+ DefaultValueInitialized: true
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/ExampleGame/Assets/HockeyAppUnityAndroid/hockeysdk-unity-1.1.6.aar.meta b/ExampleGame/Assets/HockeyAppUnityAndroid/hockeysdk-unity-1.1.6.aar.meta
deleted file mode 100644
index 9c0a0e3..0000000
--- a/ExampleGame/Assets/HockeyAppUnityAndroid/hockeysdk-unity-1.1.6.aar.meta
+++ /dev/null
@@ -1,16 +0,0 @@
-fileFormatVersion: 2
-guid: 85a18eb70b2dc4155b5e9d88764ce8d4
-timeCreated: 1501524001
-licenseType: Pro
-PluginImporter:
- serializedVersion: 1
- iconMap: {}
- executionOrder: {}
- isPreloaded: 0
- platformData:
- Any:
- enabled: 1
- settings: {}
- userData:
- assetBundleName:
- assetBundleVariant:
diff --git a/Plugins/HockeyAppUnityAndroid/hockeysdk-unity-1.1.6.aar b/ExampleGame/Assets/HockeyAppUnityAndroid/hockeysdk-unity-5.0.0.aar
similarity index 80%
rename from Plugins/HockeyAppUnityAndroid/hockeysdk-unity-1.1.6.aar
rename to ExampleGame/Assets/HockeyAppUnityAndroid/hockeysdk-unity-5.0.0.aar
index e3c4db6..fa3e71b 100644
Binary files a/Plugins/HockeyAppUnityAndroid/hockeysdk-unity-1.1.6.aar and b/ExampleGame/Assets/HockeyAppUnityAndroid/hockeysdk-unity-5.0.0.aar differ
diff --git a/ExampleGame/Assets/HockeyAppUnityAndroid/hockeysdk-unity-5.0.0.aar.meta b/ExampleGame/Assets/HockeyAppUnityAndroid/hockeysdk-unity-5.0.0.aar.meta
new file mode 100644
index 0000000..41d11ea
--- /dev/null
+++ b/ExampleGame/Assets/HockeyAppUnityAndroid/hockeysdk-unity-5.0.0.aar.meta
@@ -0,0 +1,33 @@
+fileFormatVersion: 2
+guid: 268d07c12acd74880949134e3a496b1f
+timeCreated: 1506562305
+licenseType: Pro
+PluginImporter:
+ serializedVersion: 2
+ iconMap: {}
+ executionOrder: {}
+ isPreloaded: 0
+ isOverridable: 0
+ platformData:
+ data:
+ first:
+ Android: Android
+ second:
+ enabled: 1
+ settings: {}
+ data:
+ first:
+ Any:
+ second:
+ enabled: 0
+ settings: {}
+ data:
+ first:
+ Editor: Editor
+ second:
+ enabled: 0
+ settings:
+ DefaultValueInitialized: true
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/ExampleGame/ProjectSettings/ProjectSettings.asset b/ExampleGame/ProjectSettings/ProjectSettings.asset
index f482012..c6f2269 100644
Binary files a/ExampleGame/ProjectSettings/ProjectSettings.asset and b/ExampleGame/ProjectSettings/ProjectSettings.asset differ
diff --git a/ExampleGame/ProjectSettings/ProjectVersion.txt b/ExampleGame/ProjectSettings/ProjectVersion.txt
index b0ac510..e48a9f5 100644
--- a/ExampleGame/ProjectSettings/ProjectVersion.txt
+++ b/ExampleGame/ProjectSettings/ProjectVersion.txt
@@ -1,2 +1 @@
-m_EditorVersion: 5.0.0f4
-m_StandardAssetsVersion: 0
+m_EditorVersion: 5.6.3f1
diff --git a/HockeyAppUnityPlugin/hockeysdk-unity/build.gradle b/HockeyAppUnityPlugin/hockeysdk-unity/build.gradle
index 7e05091..3891ebb 100644
--- a/HockeyAppUnityPlugin/hockeysdk-unity/build.gradle
+++ b/HockeyAppUnityPlugin/hockeysdk-unity/build.gradle
@@ -2,10 +2,10 @@ apply plugin: 'com.android.library'
android {
compileSdkVersion 26
- buildToolsVersion "26.0.0"
+ buildToolsVersion "26.0.1"
defaultConfig {
- minSdkVersion 9
+ minSdkVersion 15
targetSdkVersion 26
}
@@ -25,5 +25,5 @@ repositories {
}
dependencies {
- compile(name:'HockeySDK-4.1.5', ext:'aar')
+ compile(name:'HockeySDK-5.0.2', ext:'aar')
}
diff --git a/HockeyAppUnityPlugin/hockeysdk-unity/libs/HockeySDK-4.1.5.aar b/HockeyAppUnityPlugin/hockeysdk-unity/libs/HockeySDK-4.1.5.aar
deleted file mode 100644
index cc47805..0000000
Binary files a/HockeyAppUnityPlugin/hockeysdk-unity/libs/HockeySDK-4.1.5.aar and /dev/null differ
diff --git a/HockeyAppUnityPlugin/hockeysdk-unity/libs/HockeySDK-5.0.2.aar b/HockeyAppUnityPlugin/hockeysdk-unity/libs/HockeySDK-5.0.2.aar
new file mode 100644
index 0000000..48649e3
Binary files /dev/null and b/HockeyAppUnityPlugin/hockeysdk-unity/libs/HockeySDK-5.0.2.aar differ
diff --git a/HockeyAppUnityPlugin/hockeysdk-unity/src/main/java/net/hockeyapp/unity/HockeyUnityPlugin.java b/HockeyAppUnityPlugin/hockeysdk-unity/src/main/java/net/hockeyapp/unity/HockeyUnityPlugin.java
index 356153e..157e830 100644
--- a/HockeyAppUnityPlugin/hockeysdk-unity/src/main/java/net/hockeyapp/unity/HockeyUnityPlugin.java
+++ b/HockeyAppUnityPlugin/hockeysdk-unity/src/main/java/net/hockeyapp/unity/HockeyUnityPlugin.java
@@ -202,11 +202,6 @@ public static String getVersionName() {
*/
public static String getSdkName() {return Constants.SDK_NAME; }
- /**
- * @return unique identifier for crash reports.
- */
- public static String getCrashReporterKey() {return Constants.CRASH_IDENTIFIER; }
-
/**
* @return the device's model manufacturer name.
*/
diff --git a/Plugins/HockeyAppUnityAndroid/AndroidManifest.xml b/Plugins/HockeyAppUnityAndroid/AndroidManifest.xml
index 5f8c0d0..31eff70 100644
--- a/Plugins/HockeyAppUnityAndroid/AndroidManifest.xml
+++ b/Plugins/HockeyAppUnityAndroid/AndroidManifest.xml
@@ -1,11 +1,11 @@
+ android:versionCode="17"
+ android:versionName="5.0.0" >
diff --git a/Plugins/HockeyAppUnityAndroid/HockeyAppUnity-Scripts/HockeyAppAndroid.cs b/Plugins/HockeyAppUnityAndroid/HockeyAppUnity-Scripts/HockeyAppAndroid.cs
index fb0efe7..ddbc8d3 100644
--- a/Plugins/HockeyAppUnityAndroid/HockeyAppUnity-Scripts/HockeyAppAndroid.cs
+++ b/Plugins/HockeyAppUnityAndroid/HockeyAppUnity-Scripts/HockeyAppAndroid.cs
@@ -1,5 +1,5 @@
/*
- * Version: 1.1.6
+ * Version: 5.0.0
*/
using UnityEngine;
@@ -16,6 +16,7 @@ public class HockeyAppAndroid : MonoBehaviour
protected const string HOCKEYAPP_CRASHESPATH = "api/2/apps/[APPID]/crashes/upload";
protected const int MAX_CHARS = 199800;
protected const string LOG_FILE_DIR = "/logs/";
+ private const string SERVER_URL_PLACEHOLDER = "your-custom-server-url";
private static HockeyAppAndroid instance;
public enum AuthenticatorType
@@ -29,7 +30,7 @@ public enum AuthenticatorType
[Header("HockeyApp Setup")]
public string appID = "your-hockey-app-id";
public string packageID = "your-package-identifier";
- public string serverURL = "your-custom-server-url";
+ public string serverURL = SERVER_URL_PLACEHOLDER;
[Header("Authentication")]
public AuthenticatorType authenticatorType;
@@ -477,7 +478,7 @@ protected virtual string GetBaseURL ()
#if (UNITY_ANDROID && !UNITY_EDITOR)
string urlString = serverURL.Trim();
- if(urlString.Length > 0) {
+ if(urlString.Length > 0 && urlString != SERVER_URL_PLACEHOLDER) {
baseURL = urlString;
if(baseURL[baseURL.Length -1].Equals("/") != true) {
diff --git a/Plugins/HockeyAppUnityAndroid/HockeySDK-4.1.5.aar b/Plugins/HockeyAppUnityAndroid/HockeySDK-4.1.5.aar
deleted file mode 100644
index cc47805..0000000
Binary files a/Plugins/HockeyAppUnityAndroid/HockeySDK-4.1.5.aar and /dev/null differ
diff --git a/Plugins/HockeyAppUnityAndroid/HockeySDK-5.0.2.aar b/Plugins/HockeyAppUnityAndroid/HockeySDK-5.0.2.aar
new file mode 100644
index 0000000..48649e3
Binary files /dev/null and b/Plugins/HockeyAppUnityAndroid/HockeySDK-5.0.2.aar differ
diff --git a/Plugins/HockeyAppUnityAndroid/README.pdf b/Plugins/HockeyAppUnityAndroid/README.pdf
new file mode 100644
index 0000000..d417ce6
Binary files /dev/null and b/Plugins/HockeyAppUnityAndroid/README.pdf differ
diff --git a/ExampleGame/Assets/HockeyAppUnityAndroid/hockeysdk-unity-1.1.6.aar b/Plugins/HockeyAppUnityAndroid/hockeysdk-unity-5.0.0.aar
similarity index 80%
rename from ExampleGame/Assets/HockeyAppUnityAndroid/hockeysdk-unity-1.1.6.aar
rename to Plugins/HockeyAppUnityAndroid/hockeysdk-unity-5.0.0.aar
index e3c4db6..fa3e71b 100644
Binary files a/ExampleGame/Assets/HockeyAppUnityAndroid/hockeysdk-unity-1.1.6.aar and b/Plugins/HockeyAppUnityAndroid/hockeysdk-unity-5.0.0.aar differ
diff --git a/README.md b/README.md
index 1502a4b..e8b3ec2 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-## Version 1.1.6
+# Version 5.0.0
## Introduction
@@ -10,7 +10,7 @@ The following features are currently supported:
2. **Collect exceptions** The HockeySDK-Unity-Android can automatically report uncaught managed exceptions coming from your C# code. Just like crashes, those exceptions will be sent on the next app start and are displayed on HockeyApp.
-2. **User metrics:** Understand user behavior to improve your app. Track usage through daily and monthly active users. Monitor crash impacted users. Measure customer engagement through session count. This feature requires a minimum API level of 14 (Android 4.x Ice Cream Sandwich).
+2. **User metrics:** Understand user behavior to improve your app. Track usage through daily and monthly active users. Monitor crash impacted users. Measure customer engagement through session count.
3. **Update alpha/beta apps:** The app will check with HockeyApp if a new version for your alpha/beta build is available. If yes, it will show a dialog to users and let them see the release notes, the version history and start the installation process right away. You can even force the installation of certain updates.
@@ -20,7 +20,7 @@ The following features are currently supported:
This document contains the following sections:
-1. [Requirements (Version 1.1.6)](#1)
+1. [Requirements](#1)
2. [Installation & Setup](#2)
3. [Examples](#3)
4. [Troubleshooting](#4)
@@ -28,11 +28,11 @@ This document contains the following sections:
6. [Contributor License](#6)
7. [Licenses](#7)
-## Requirements (Version 1.1.6)
+## Requirements
* [Changelog](Documentation/Changelog.md)
* Unity 5.0 or newer (SDK versions with Unity 4 support can be found at the [Unity Asset Store](https://www.assetstore.unity3d.com/en/?gclid=CO) or by switching to the 1.0.3 tag on GitHub).
-* Android 2.3 or newer.
+* Android API level 15 or later.
## Installation & Setup