Skip to content

Commit f7ff0fc

Browse files
author
Cynthia Jiang
committed
Add function to being able to set android minSDKVersion in UnityCompat
Change-Id: Id295c37d8847710f6884d4876e12437ccd79bbac
1 parent d0ec33f commit f7ff0fc

File tree

1 file changed

+16
-1
lines changed

1 file changed

+16
-1
lines changed

source/PlayServicesResolver/src/UnityCompat.cs

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,8 @@ public class UnityCompat {
3636
private const string DEFAULT_BUILD_TOOLS_VERSION = "25.0.2";
3737

3838
private const string UNITY_ANDROID_VERSION_ENUM_PREFIX = "AndroidApiLevel";
39+
private const string UNITY_ANDROID_MIN_SDK_VERSION_PROPERTY = "minSdkVersion";
40+
private const string UNITY_ANDROID_TARGET_SDK_VERSION_PROPERTY = "targetSdkVersion";
3941
private const string UNITY_ANDROID_EXTENSION_ASSEMBLY = "UnityEditor.Android.Extensions";
4042
private const string UNITY_ANDROID_JAVA_TOOLS_CLASS = "UnityEditor.Android.AndroidJavaTools";
4143
private const string UNITY_ANDROID_SDKTOOLS_CLASS = "UnityEditor.Android.AndroidSDKTools";
@@ -100,6 +102,15 @@ public static int GetAndroidMinSDKVersion() {
100102
return minSdkVersion;
101103
}
102104

105+
/// <summary>
106+
/// Try to set the min Android SDK version.
107+
/// </summary>
108+
/// <param name="sdkVersion">SDK version to use, -1 for auto (newest installed SDK).</param>
109+
/// <returns>true if successful, false otherwise.</returns>
110+
public static bool SetAndroidMinSDKVersion(int sdkVersion) {
111+
return SetAndroidSDKVersion(sdkVersion, UNITY_ANDROID_MIN_SDK_VERSION_PROPERTY);
112+
}
113+
103114
/// <summary>
104115
/// Parses the TargetSDK as an int from the Android Unity Player Settings.
105116
/// </summary>
@@ -126,7 +137,11 @@ public static int GetAndroidTargetSDKVersion() {
126137
/// <param name="sdkVersion">SDK version to use, -1 for auto (newest installed SDK).</param>
127138
/// <returns>true if successful, false otherwise.</returns>
128139
public static bool SetAndroidTargetSDKVersion(int sdkVersion) {
129-
var property = typeof(UnityEditor.PlayerSettings.Android).GetProperty("targetSdkVersion");
140+
return SetAndroidSDKVersion(sdkVersion, UNITY_ANDROID_TARGET_SDK_VERSION_PROPERTY);
141+
}
142+
143+
private static bool SetAndroidSDKVersion(int sdkVersion, string propertyName) {
144+
var property = typeof(UnityEditor.PlayerSettings.Android).GetProperty(propertyName);
130145
if (property == null) return false;
131146
var enumValueString = sdkVersion >= 0 ?
132147
UNITY_ANDROID_VERSION_ENUM_PREFIX + sdkVersion.ToString() :

0 commit comments

Comments
 (0)