@@ -12,6 +12,7 @@ public class AndroidBuildTool : EditorWindow
1212 [ System . Serializable ]
1313 private class BuildConfig
1414 {
15+ public bool enabled = true ;
1516 public bool armv7 = true ;
1617 public bool armv64 = false ;
1718 public bool il2cpp = true ;
@@ -23,6 +24,7 @@ private class BuildConfig
2324 public BuildConfig Copy ( )
2425 {
2526 return new BuildConfig ( ) {
27+ enabled = this . enabled ,
2628 armv7 = this . armv7 ,
2729 armv64 = this . armv64 ,
2830 il2cpp = this . il2cpp ,
@@ -56,13 +58,18 @@ private void OnGUI()
5658
5759 BuildConfig config = buildConfigs [ i ] ;
5860
59- config . armv7 = EditorGUILayout . Toggle ( "ARMv7" , config . armv7 ) ;
60- config . armv64 = EditorGUILayout . Toggle ( "ARMv64" , config . armv64 ) ;
61- config . il2cpp = EditorGUILayout . Toggle ( "IL2CPP" , config . il2cpp ) ;
62- config . devBuild = EditorGUILayout . Toggle ( "Development Build" , config . devBuild ) ;
63- config . apkName = EditorGUILayout . TextField ( "APK Name" , config . apkName ) ;
64- config . version = EditorGUILayout . TextField ( "Version" , config . version ) ;
65- config . bundleVersion = EditorGUILayout . TextField ( "Bundle Version" , config . bundleVersion ) ;
61+ config . enabled = EditorGUILayout . Toggle ( "Enabled" , config . enabled ) ;
62+ EditorGUI . BeginDisabledGroup ( ! config . enabled ) ;
63+ {
64+ config . armv7 = EditorGUILayout . Toggle ( "ARMv7" , config . armv7 ) ;
65+ config . armv64 = EditorGUILayout . Toggle ( "ARMv64" , config . armv64 ) ;
66+ config . il2cpp = EditorGUILayout . Toggle ( "IL2CPP" , config . il2cpp ) ;
67+ config . devBuild = EditorGUILayout . Toggle ( "Development Build" , config . devBuild ) ;
68+ config . apkName = EditorGUILayout . TextField ( "APK Name" , config . apkName ) ;
69+ config . version = EditorGUILayout . TextField ( "Version" , config . version ) ;
70+ config . bundleVersion = EditorGUILayout . TextField ( "Bundle Version" , config . bundleVersion ) ;
71+ }
72+ EditorGUI . EndDisabledGroup ( ) ;
6673
6774 if ( GUILayout . Button ( "Remove" ) )
6875 {
@@ -94,6 +101,9 @@ private void BuildAll()
94101 for ( int i = 0 ; i < buildConfigs . Count ; i ++ )
95102 {
96103 BuildConfig config = buildConfigs [ i ] ;
104+ if ( ! config . enabled )
105+ continue ;
106+
97107 BuildAndroid ( config , i + 1 ) ;
98108 }
99109 }
@@ -159,7 +169,15 @@ private void LoadSettings()
159169 if ( ! string . IsNullOrEmpty ( json ) )
160170 {
161171 SerializableList < BuildConfig > loadedList = JsonUtility . FromJson < SerializableList < BuildConfig > > ( json ) ;
162- buildConfigs = loadedList . list ;
172+ buildConfigs = loadedList != null && loadedList . list != null ? loadedList . list : new List < BuildConfig > ( ) ;
173+
174+ if ( ! json . Contains ( "\" enabled\" " ) )
175+ {
176+ foreach ( BuildConfig config in buildConfigs )
177+ {
178+ config . enabled = true ;
179+ }
180+ }
163181 }
164182 }
165183
@@ -168,4 +186,4 @@ private class SerializableList<T>
168186 {
169187 public List < T > list ;
170188 }
171- }
189+ }
0 commit comments