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