update: 更新CFG条目判定逻辑
							parent
							
								
									5d73a79378
								
							
						
					
					
						commit
						69ec805265
					
				|  | @ -84,7 +84,15 @@ namespace Guru.Editor | ||||||
| 
 | 
 | ||||||
|         #region Service Checker |         #region Service Checker | ||||||
| 
 | 
 | ||||||
|  |         enum CheckStatus | ||||||
|  |         { | ||||||
|  |             Passed, | ||||||
|  |             Warning, | ||||||
|  |             Failed, | ||||||
|  |         } | ||||||
|  | 
 | ||||||
|         private const string MARK_FAIL = "#FAIL"; |         private const string MARK_FAIL = "#FAIL"; | ||||||
|  |         private const string MARK_WARN = "#WARN"; | ||||||
|         private const string MARK_INDENT = "    "; |         private const string MARK_INDENT = "    "; | ||||||
|         private List<string> _completionCheckResult; |         private List<string> _completionCheckResult; | ||||||
|         private int _serviceCriticalFail = 0; |         private int _serviceCriticalFail = 0; | ||||||
|  | @ -101,19 +109,25 @@ namespace Guru.Editor | ||||||
|             _completionCheckResult = new List<string>(40); |             _completionCheckResult = new List<string>(40); | ||||||
|             string mk_yes = " ( \u2714 ) "; |             string mk_yes = " ( \u2714 ) "; | ||||||
|             string mk_no = " ( \u2718 ) "; |             string mk_no = " ( \u2718 ) "; | ||||||
|             string mk_warn = " ( \u2639 ) "; |             string mk_warn = " ( ! ) "; | ||||||
|             string mk_star = " ( \u2605 ) "; |             string mk_star = " ( \u2605 ) "; | ||||||
|             string check_passed = $"{MARK_INDENT}{mk_yes} All items passed!"; |             string check_passed = $"{MARK_INDENT}{mk_yes} All items passed!"; | ||||||
|             if (_servicesConfig == null) |             if (_servicesConfig == null) | ||||||
|             { |             { | ||||||
|                 AddResultLine($"{mk_yes} guru-services is missing", false); |                 AddResultLine($"{mk_yes} guru-services is missing", CheckStatus.Failed); | ||||||
|                 AddResultLine($"Please contact Guru tech support to get help.", false); |                 AddResultLine($"Please contact Guru tech support to get help.", CheckStatus.Failed); | ||||||
|                 _serviceCriticalFail++; |                 _serviceCriticalFail++; | ||||||
|             } |             } | ||||||
|             else |             else | ||||||
|             { |             { | ||||||
|                 bool passed = true; |                 bool passed = true; | ||||||
|                 AddResultLine($"{mk_star} <guru-services> exists!"); |                 AddResultLine($"{mk_star} <guru-services> exists!"); | ||||||
|  |                 if (_servicesConfig.app_settings != null  | ||||||
|  |                     && !string.IsNullOrEmpty(_servicesConfig.app_settings.bundle_id)) | ||||||
|  |                 { | ||||||
|  |                     AddResultLine($"{MARK_INDENT}  +  {MARK_INDENT}{_servicesConfig.app_settings.bundle_id}"); | ||||||
|  |                 } | ||||||
|  | 
 | ||||||
|                 AddResultLine($"--------------------------------"); |                 AddResultLine($"--------------------------------"); | ||||||
|                  |                  | ||||||
|                 //-------- APP Settings -------- |                 //-------- APP Settings -------- | ||||||
|  | @ -122,7 +136,7 @@ namespace Guru.Editor | ||||||
|                 if (_servicesConfig.app_settings == null) |                 if (_servicesConfig.app_settings == null) | ||||||
|                 { |                 { | ||||||
|                     passed = false; |                     passed = false; | ||||||
|                     AddResultLine($"{MARK_INDENT}{mk_no} settings is missing!", false); |                     AddResultLine($"{MARK_INDENT}{mk_no} settings is missing!", CheckStatus.Failed); | ||||||
|                     _serviceCriticalFail++; |                     _serviceCriticalFail++; | ||||||
|                 } |                 } | ||||||
|                 else |                 else | ||||||
|  | @ -130,25 +144,25 @@ namespace Guru.Editor | ||||||
|                     if (_servicesConfig.app_settings.app_id.IsNullOrEmpty()) |                     if (_servicesConfig.app_settings.app_id.IsNullOrEmpty()) | ||||||
|                     { |                     { | ||||||
|                         passed = false; |                         passed = false; | ||||||
|                         AddResultLine($"{MARK_INDENT}{mk_no} AppID is missing!", false); |                         AddResultLine($"{MARK_INDENT}{mk_no} AppID is missing!", CheckStatus.Failed); | ||||||
|                         _serviceCriticalFail++; |                         _serviceCriticalFail++; | ||||||
|                     } |                     } | ||||||
|                     if (_servicesConfig.app_settings.bundle_id.IsNullOrEmpty()) |                     if (_servicesConfig.app_settings.bundle_id.IsNullOrEmpty()) | ||||||
|                     { |                     { | ||||||
|                         passed = false; |                         passed = false; | ||||||
|                         AddResultLine($"{MARK_INDENT}{mk_no} BundleID is missing!", false); |                         AddResultLine($"{MARK_INDENT}{mk_no} BundleID is missing!", CheckStatus.Failed); | ||||||
|                         _serviceCriticalFail++; |                         _serviceCriticalFail++; | ||||||
|                     } |                     } | ||||||
|                     if (_servicesConfig.app_settings.product_name.IsNullOrEmpty()) |                     if (_servicesConfig.app_settings.product_name.IsNullOrEmpty()) | ||||||
|                     { |                     { | ||||||
|                         passed = false; |                         passed = false; | ||||||
|                         AddResultLine($"{MARK_INDENT}{mk_no} Product Name is missing!", false); |                         AddResultLine($"{MARK_INDENT}{mk_no} Product Name is missing!", CheckStatus.Failed); | ||||||
|                         _serviceCriticalFail++; |                         _serviceCriticalFail++; | ||||||
|                     } |                     } | ||||||
|                     if (_servicesConfig.app_settings.support_email.IsNullOrEmpty()) |                     if (_servicesConfig.app_settings.support_email.IsNullOrEmpty()) | ||||||
|                     { |                     { | ||||||
|                         passed = false; |                         passed = false; | ||||||
|                         AddResultLine($"{MARK_INDENT}{mk_no} Support Email is missing!", false); |                         AddResultLine($"{MARK_INDENT}{mk_no} Support Email is missing!", CheckStatus.Failed); | ||||||
|                         _serviceNormalFail++; |                         _serviceNormalFail++; | ||||||
|                     } |                     } | ||||||
|                 } |                 } | ||||||
|  | @ -161,7 +175,7 @@ namespace Guru.Editor | ||||||
|                 if (_servicesConfig.ad_settings == null) |                 if (_servicesConfig.ad_settings == null) | ||||||
|                 { |                 { | ||||||
|                     passed = false; |                     passed = false; | ||||||
|                     AddResultLine($"{MARK_INDENT}{mk_no} settings is missing!", false); |                     AddResultLine($"{MARK_INDENT}{mk_no} settings is missing!", CheckStatus.Failed); | ||||||
|                     _serviceCriticalFail++; |                     _serviceCriticalFail++; | ||||||
|                 } |                 } | ||||||
|                 else |                 else | ||||||
|  | @ -169,61 +183,61 @@ namespace Guru.Editor | ||||||
|                     if (_servicesConfig.ad_settings.sdk_key.IsNullOrEmpty()) |                     if (_servicesConfig.ad_settings.sdk_key.IsNullOrEmpty()) | ||||||
|                     { |                     { | ||||||
|                         passed = false; |                         passed = false; | ||||||
|                         AddResultLine($"{MARK_INDENT}{mk_no} SDK Key is missing!", false); |                         AddResultLine($"{MARK_INDENT}{mk_no} SDK Key is missing!", CheckStatus.Failed); | ||||||
|                         _serviceCriticalFail++; |                         _serviceCriticalFail++; | ||||||
|                     } |                     } | ||||||
|                     if (!IsArrayNotEmpty(_servicesConfig.ad_settings.admob_app_id)) |                     if (!IsArrayNotEmpty(_servicesConfig.ad_settings.admob_app_id)) | ||||||
|                     { |                     { | ||||||
|                         passed = false; |                         passed = false; | ||||||
|                         AddResultLine($"{MARK_INDENT}{mk_no} Admob ID is missing!", false); |                         AddResultLine($"{MARK_INDENT}{mk_no} Admob ID is missing!", CheckStatus.Failed); | ||||||
|                         _serviceCriticalFail++; |                         _serviceCriticalFail++; | ||||||
|                     } |                     } | ||||||
|                     if (!IsArrayNotEmpty(_servicesConfig.ad_settings.max_ids_android)) |                     if (!IsArrayNotEmpty(_servicesConfig.ad_settings.max_ids_android)) | ||||||
|                     { |                     { | ||||||
|                         passed = false; |                         passed = false; | ||||||
|                         AddResultLine($"{MARK_INDENT}{mk_no} AppLovin Android IDs is missing!", false); |                         AddResultLine($"{MARK_INDENT}{mk_no} AppLovin Android IDs is missing!", CheckStatus.Failed); | ||||||
|                         _serviceCriticalFail++; |                         _serviceCriticalFail++; | ||||||
|                     } |                     } | ||||||
|                     if (!IsArrayNotEmpty(_servicesConfig.ad_settings.max_ids_ios)) |                     if (!IsArrayNotEmpty(_servicesConfig.ad_settings.max_ids_ios)) | ||||||
|                     { |                     { | ||||||
|                         passed = false; |                         passed = false; | ||||||
|                         AddResultLine($"{MARK_INDENT}{mk_no} AppLovin iOS IDs is missing!", false); |                         AddResultLine($"{MARK_INDENT}{mk_no} AppLovin iOS IDs is missing!", CheckStatus.Failed); | ||||||
|                         _serviceCriticalFail++; |                         _serviceCriticalFail++; | ||||||
|                     } |                     } | ||||||
|                     if (!IsArrayNotEmpty(_servicesConfig.ad_settings.amazon_ids_android)) |                     if (!IsArrayNotEmpty(_servicesConfig.ad_settings.amazon_ids_android)) | ||||||
|                     { |                     { | ||||||
|                         passed = false; |                         passed = false; | ||||||
|                         AddResultLine($"{MARK_INDENT}{mk_warn} Amazon Android IDs is missing!", false); |                         AddResultLine($"{MARK_INDENT}{mk_warn} Amazon Android IDs is missing!", CheckStatus.Warning); | ||||||
|                         _serviceNormalFail++; |                         _serviceNormalFail++; | ||||||
|                     } |                     } | ||||||
|                     if (!IsArrayNotEmpty(_servicesConfig.ad_settings.amazon_ids_ios)) |                     if (!IsArrayNotEmpty(_servicesConfig.ad_settings.amazon_ids_ios)) | ||||||
|                     { |                     { | ||||||
|                         passed = false; |                         passed = false; | ||||||
|                         AddResultLine($"{MARK_INDENT}{mk_warn} Amazon iOS IDs is missing!", false); |                         AddResultLine($"{MARK_INDENT}{mk_warn} Amazon iOS IDs is missing!", CheckStatus.Warning); | ||||||
|                         _serviceNormalFail++; |                         _serviceNormalFail++; | ||||||
|                     } |                     } | ||||||
|                     if (!IsArrayNotEmpty(_servicesConfig.ad_settings.pubmatic_ids_android)) |                     if (!IsArrayNotEmpty(_servicesConfig.ad_settings.pubmatic_ids_android)) | ||||||
|                     { |                     { | ||||||
|                         passed = false; |                         passed = false; | ||||||
|                         AddResultLine($"{MARK_INDENT}{mk_warn} Pubmatic Android IDs is missing!", false); |                         AddResultLine($"{MARK_INDENT}{mk_warn} Pubmatic Android IDs is missing!", CheckStatus.Warning); | ||||||
|                         _serviceNormalFail++; |                         _serviceNormalFail++; | ||||||
|                     } |                     } | ||||||
|                     if (!IsArrayNotEmpty(_servicesConfig.ad_settings.pubmatic_ids_ios)) |                     if (!IsArrayNotEmpty(_servicesConfig.ad_settings.pubmatic_ids_ios)) | ||||||
|                     { |                     { | ||||||
|                         passed = false; |                         passed = false; | ||||||
|                         AddResultLine($"{MARK_INDENT}{mk_warn} Pubmatic iOS IDs is missing!", false); |                         AddResultLine($"{MARK_INDENT}{mk_warn} Pubmatic iOS IDs is missing!", CheckStatus.Warning); | ||||||
|                         _serviceNormalFail++; |                         _serviceNormalFail++; | ||||||
|                     } |                     } | ||||||
|                     if (!IsArrayNotEmpty(_servicesConfig.ad_settings.moloco_ids_android)) |                     if (!IsArrayNotEmpty(_servicesConfig.ad_settings.moloco_ids_android)) | ||||||
|                     { |                     { | ||||||
|                         passed = false; |                         passed = false; | ||||||
|                         AddResultLine($"{MARK_INDENT}{mk_warn} Moloco Android Test IDs is missing!", false); |                         AddResultLine($"{MARK_INDENT}{mk_warn} Moloco Android Test IDs is missing!", CheckStatus.Warning); | ||||||
|                         _serviceNormalFail++; |                         _serviceNormalFail++; | ||||||
|                     } |                     } | ||||||
|                     if (!IsArrayNotEmpty(_servicesConfig.ad_settings.moloco_ids_ios)) |                     if (!IsArrayNotEmpty(_servicesConfig.ad_settings.moloco_ids_ios)) | ||||||
|                     { |                     { | ||||||
|                         passed = false; |                         passed = false; | ||||||
|                         AddResultLine($"{MARK_INDENT}{mk_warn} Moloco iOS Test IDs is missing!", false); |                         AddResultLine($"{MARK_INDENT}{mk_warn} Moloco iOS Test IDs is missing!", CheckStatus.Warning); | ||||||
|                         _serviceNormalFail++; |                         _serviceNormalFail++; | ||||||
|                     } |                     } | ||||||
|                 } |                 } | ||||||
|  | @ -235,7 +249,7 @@ namespace Guru.Editor | ||||||
|                 if (_servicesConfig.fb_settings == null) |                 if (_servicesConfig.fb_settings == null) | ||||||
|                 { |                 { | ||||||
|                     passed = false; |                     passed = false; | ||||||
|                     AddResultLine($"{MARK_INDENT}{mk_warn} Facebook settings is missing!", false); |                     AddResultLine($"{MARK_INDENT}{mk_warn} Facebook settings is missing!", CheckStatus.Warning); | ||||||
|                     _serviceNormalFail++; |                     _serviceNormalFail++; | ||||||
|                 } |                 } | ||||||
|                 else |                 else | ||||||
|  | @ -243,13 +257,13 @@ namespace Guru.Editor | ||||||
|                     if (_servicesConfig.fb_settings.app_id.IsNullOrEmpty()) |                     if (_servicesConfig.fb_settings.app_id.IsNullOrEmpty()) | ||||||
|                     { |                     { | ||||||
|                         passed = false; |                         passed = false; | ||||||
|                         AddResultLine($"{MARK_INDENT}{mk_warn} Facebook AppID is missing!", false); |                         AddResultLine($"{MARK_INDENT}{mk_warn} Facebook AppID is missing!", CheckStatus.Warning); | ||||||
|                         _serviceNormalFail++; |                         _serviceNormalFail++; | ||||||
|                     } |                     } | ||||||
|                     if (_servicesConfig.fb_settings.client_token.IsNullOrEmpty()) |                     if (_servicesConfig.fb_settings.client_token.IsNullOrEmpty()) | ||||||
|                     { |                     { | ||||||
|                         passed = false; |                         passed = false; | ||||||
|                         AddResultLine($"{MARK_INDENT}{mk_warn} Facebook Client Token is missing!", false); |                         AddResultLine($"{MARK_INDENT}{mk_warn} Facebook Client Token is missing!", CheckStatus.Warning); | ||||||
|                         _serviceNormalFail++; |                         _serviceNormalFail++; | ||||||
|                     } |                     } | ||||||
|                 } |                 } | ||||||
|  | @ -257,7 +271,7 @@ namespace Guru.Editor | ||||||
|                 if (_servicesConfig.adjust_settings == null) |                 if (_servicesConfig.adjust_settings == null) | ||||||
|                 { |                 { | ||||||
|                     passed = false; |                     passed = false; | ||||||
|                     AddResultLine($"{MARK_INDENT}{mk_warn} Adjust settings is missing!", false); |                     AddResultLine($"{MARK_INDENT}{mk_warn} Adjust settings is missing!", CheckStatus.Warning); | ||||||
|                     _serviceNormalFail++; |                     _serviceNormalFail++; | ||||||
|                 } |                 } | ||||||
|                 else |                 else | ||||||
|  | @ -265,14 +279,14 @@ namespace Guru.Editor | ||||||
|                     if(!IsArrayNotEmpty(_servicesConfig.adjust_settings.app_token)) |                     if(!IsArrayNotEmpty(_servicesConfig.adjust_settings.app_token)) | ||||||
|                     { |                     { | ||||||
|                         passed = false; |                         passed = false; | ||||||
|                         AddResultLine($"{MARK_INDENT}{mk_warn} Adjust AppToken is missing!", false); |                         AddResultLine($"{MARK_INDENT}{mk_warn} Adjust AppToken is missing!", CheckStatus.Warning); | ||||||
|                         _serviceNormalFail++; |                         _serviceNormalFail++; | ||||||
|                     } |                     } | ||||||
| 
 | 
 | ||||||
|                     if (!IsArrayNotEmpty(_servicesConfig.adjust_settings.events)) |                     if (!IsArrayNotEmpty(_servicesConfig.adjust_settings.events)) | ||||||
|                     { |                     { | ||||||
|                         passed = false; |                         passed = false; | ||||||
|                         AddResultLine($"{MARK_INDENT}{mk_warn} Adjust Events is missing!", false); |                         AddResultLine($"{MARK_INDENT}{mk_warn} Adjust Events is missing!", CheckStatus.Warning); | ||||||
|                         _serviceNormalFail++; |                         _serviceNormalFail++; | ||||||
|                     } |                     } | ||||||
|                 } |                 } | ||||||
|  | @ -284,7 +298,7 @@ namespace Guru.Editor | ||||||
|                 if (!IsArrayNotEmpty(_servicesConfig.products)) |                 if (!IsArrayNotEmpty(_servicesConfig.products)) | ||||||
|                 { |                 { | ||||||
|                     passed = false; |                     passed = false; | ||||||
|                     AddResultLine($"{MARK_INDENT}{mk_warn} Product list is missing!", false); |                     AddResultLine($"{MARK_INDENT}{mk_warn} Product list is missing!", CheckStatus.Warning); | ||||||
|                     _serviceNormalFail++; |                     _serviceNormalFail++; | ||||||
|                 } |                 } | ||||||
|                 if (passed) AddResultLine(check_passed); |                 if (passed) AddResultLine(check_passed); | ||||||
|  | @ -292,13 +306,26 @@ namespace Guru.Editor | ||||||
| 
 | 
 | ||||||
|         } |         } | ||||||
| 
 | 
 | ||||||
|         private void AddResultLine(string msg, bool passed = true) |         private void AddResultLine(string msg, CheckStatus status = CheckStatus.Passed) | ||||||
|         { |         { | ||||||
|             if (_completionCheckResult == null) |             if (_completionCheckResult == null) | ||||||
|             { |             { | ||||||
|                 _completionCheckResult = new List<string>(40); |                 _completionCheckResult = new List<string>(40); | ||||||
|             } |             } | ||||||
|             string mk = passed? "" : MARK_FAIL; | 
 | ||||||
|  |             string mk = ""; | ||||||
|  |             switch (status) | ||||||
|  |             { | ||||||
|  |                 case CheckStatus.Passed: | ||||||
|  |                     mk = "";  | ||||||
|  |                     break; | ||||||
|  |                 case CheckStatus.Warning: | ||||||
|  |                     mk = MARK_WARN; | ||||||
|  |                     break; | ||||||
|  |                 case CheckStatus.Failed: | ||||||
|  |                     mk = MARK_FAIL; | ||||||
|  |                     break; | ||||||
|  |             } | ||||||
|             _completionCheckResult.Add($"{msg}{mk}"); |             _completionCheckResult.Add($"{msg}{mk}"); | ||||||
|         } |         } | ||||||
| 
 | 
 | ||||||
|  | @ -308,6 +335,7 @@ namespace Guru.Editor | ||||||
|             { |             { | ||||||
|                 Color green = new Color(0.7f, 1, 0); |                 Color green = new Color(0.7f, 1, 0); | ||||||
|                 Color red = new Color(1, 0.2f, 0); |                 Color red = new Color(1, 0.2f, 0); | ||||||
|  |                 Color yellow = new Color(1f, 0.8f, 0.2f); | ||||||
|                 Color c; |                 Color c; | ||||||
|                 string line = ""; |                 string line = ""; | ||||||
|                 for (int i = 0; i < _completionCheckResult.Count; i++) |                 for (int i = 0; i < _completionCheckResult.Count; i++) | ||||||
|  | @ -319,6 +347,11 @@ namespace Guru.Editor | ||||||
|                         line = line.Replace(MARK_FAIL, ""); |                         line = line.Replace(MARK_FAIL, ""); | ||||||
|                         c = red; |                         c = red; | ||||||
|                     } |                     } | ||||||
|  |                     else if (line.EndsWith(MARK_WARN)) | ||||||
|  |                     { | ||||||
|  |                         line = line.Replace(MARK_WARN, ""); | ||||||
|  |                         c = yellow; | ||||||
|  |                     } | ||||||
|                     GUI_Color(c, () => |                     GUI_Color(c, () => | ||||||
|                     { |                     { | ||||||
|                         EditorGUILayout.LabelField(line); |                         EditorGUILayout.LabelField(line); | ||||||
|  | @ -464,6 +497,7 @@ namespace Guru.Editor | ||||||
|             } |             } | ||||||
|             else |             else | ||||||
|             { |             { | ||||||
|  |                 EnsureParentDirectory(GURU_SETTINGS_PATH); | ||||||
|                 settings = CreateInstance<GuruSettings>(); |                 settings = CreateInstance<GuruSettings>(); | ||||||
|                 AssetDatabase.CreateAsset(settings, GURU_SETTINGS_PATH); |                 AssetDatabase.CreateAsset(settings, GURU_SETTINGS_PATH); | ||||||
|             } |             } | ||||||
|  | @ -871,6 +905,14 @@ namespace Guru.Editor | ||||||
|             return array.Length >= length; |             return array.Length >= length; | ||||||
|         } |         } | ||||||
| 
 | 
 | ||||||
|  |         private static void EnsureParentDirectory(string filePath) | ||||||
|  |         { | ||||||
|  |             var dir = Path.GetDirectoryName(filePath); | ||||||
|  |             if (!Directory.Exists(dir)) | ||||||
|  |             { | ||||||
|  |                 Directory.CreateDirectory(dir); | ||||||
|  |             } | ||||||
|  |         } | ||||||
| 
 | 
 | ||||||
|         #endregion |         #endregion | ||||||
|          |          | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue