添加BuildPipelineSettings,支持自定义 LinkXmlProcess和 ObfuscationProcess的 callbackOrder。
parent
59db0dfaab
commit
02ed0608e4
|
@ -0,0 +1,15 @@
|
|||
using System;
|
||||
using UnityEngine;
|
||||
|
||||
namespace Obfuz.Settings
|
||||
{
|
||||
[Serializable]
|
||||
public class BuildPipelineSettings
|
||||
{
|
||||
[Tooltip("callback order of LinkXmlProcessor")]
|
||||
public int linkXmlProcessCallbackOrder = 10000;
|
||||
|
||||
[Tooltip("callback order of ObfuscationProcess")]
|
||||
public int obfuscationProcessCallbackOrder = 10000;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,11 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 68737b215ecfe344a93d56007e186432
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -5,11 +5,15 @@ using UnityEngine;
|
|||
|
||||
namespace Obfuz.Settings
|
||||
{
|
||||
|
||||
public class ObfuzSettings : ScriptableObject
|
||||
{
|
||||
[Tooltip("enable Obfuz")]
|
||||
public bool enable = true;
|
||||
|
||||
[Tooltip("build pipeline settings")]
|
||||
public BuildPipelineSettings buildPipelineSettings;
|
||||
|
||||
[Tooltip("assembly settings")]
|
||||
public AssemblySettings assemblySettings;
|
||||
|
||||
|
|
|
@ -25,6 +25,8 @@ namespace Obfuz.Settings
|
|||
|
||||
private SerializedObject _serializedObject;
|
||||
private SerializedProperty _enable;
|
||||
private SerializedProperty _buildPipelineSettings;
|
||||
|
||||
private SerializedProperty _assemblySettings;
|
||||
private SerializedProperty _obfuscationPassSettings;
|
||||
private SerializedProperty _secretSettings;
|
||||
|
@ -61,6 +63,8 @@ namespace Obfuz.Settings
|
|||
_serializedObject?.Dispose();
|
||||
_serializedObject = new SerializedObject(setting);
|
||||
_enable = _serializedObject.FindProperty("enable");
|
||||
_buildPipelineSettings = _serializedObject.FindProperty("buildPipelineSettings");
|
||||
|
||||
_assemblySettings = _serializedObject.FindProperty("assemblySettings");
|
||||
_obfuscationPassSettings = _serializedObject.FindProperty("obfuscationPassSettings");
|
||||
_secretSettings = _serializedObject.FindProperty("secretSettings");
|
||||
|
@ -88,6 +92,8 @@ namespace Obfuz.Settings
|
|||
EditorGUI.BeginChangeCheck();
|
||||
|
||||
EditorGUILayout.PropertyField(_enable);
|
||||
EditorGUILayout.PropertyField(_buildPipelineSettings);
|
||||
|
||||
EditorGUILayout.PropertyField(_assemblySettings);
|
||||
EditorGUILayout.PropertyField(_obfuscationPassSettings);
|
||||
EditorGUILayout.PropertyField(_secretSettings);
|
||||
|
|
|
@ -16,7 +16,7 @@ namespace Obfuz.Unity
|
|||
{
|
||||
public class LinkXmlProcess : IUnityLinkerProcessor
|
||||
{
|
||||
public int callbackOrder => 10000;
|
||||
public int callbackOrder => ObfuzSettings.Instance.buildPipelineSettings.linkXmlProcessCallbackOrder;
|
||||
|
||||
public string GenerateAdditionalLinkXmlFile(BuildReport report, UnityLinkerBuildPipelineData data)
|
||||
{
|
||||
|
|
|
@ -16,7 +16,7 @@ namespace Obfuz.Unity
|
|||
#if UNITY_2019_1_OR_NEWER
|
||||
public class ObfuscationProcess : IPostBuildPlayerScriptDLLs
|
||||
{
|
||||
public int callbackOrder => 10000;
|
||||
public int callbackOrder => ObfuzSettings.Instance.buildPipelineSettings.obfuscationProcessCallbackOrder;
|
||||
|
||||
public static event Action<ObfuscationBeginEventArgs> OnObfuscationBegin;
|
||||
|
||||
|
|
Loading…
Reference in New Issue