com.typhoon.unitysdk 1.0.49 → 1.0.51
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md
CHANGED
|
@@ -1,7 +1,23 @@
|
|
|
1
1
|
# 更新日志
|
|
2
|
+
## [1.0.51] - 2023-12-10
|
|
3
|
+
|
|
4
|
+
### 修复
|
|
5
|
+
* 修复检查自动更新的bug
|
|
6
|
+
|
|
7
|
+
### 优化
|
|
8
|
+
* 自动更新是查看日志窗口添加安装按钮
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
## [1.0.50] - 2023-12-10
|
|
12
|
+
|
|
13
|
+
### 新增
|
|
14
|
+
* 新增历史版本记录
|
|
15
|
+
* 允许切换历史版本
|
|
16
|
+
|
|
17
|
+
|
|
2
18
|
## [1.0.49] - 2023-12-10
|
|
3
19
|
|
|
4
|
-
### 其它
|
|
20
|
+
### 其它
|
|
5
21
|
* 更新测试版本3
|
|
6
22
|
|
|
7
23
|
|
|
@@ -12,6 +12,8 @@ namespace TyphoonUnitySDK
|
|
|
12
12
|
private static void Open()
|
|
13
13
|
{
|
|
14
14
|
_changelog = null;
|
|
15
|
+
_versionInfo = null;
|
|
16
|
+
_showInstallBtn = false;
|
|
15
17
|
var win = GetWindow<ChangelogPreviewerWindow>();
|
|
16
18
|
win.minSize = new Vector2(600, 800);
|
|
17
19
|
win.titleContent = new GUIContent("更新日志");
|
|
@@ -19,9 +21,11 @@ namespace TyphoonUnitySDK
|
|
|
19
21
|
}
|
|
20
22
|
|
|
21
23
|
|
|
22
|
-
public static void Open(string changelog)
|
|
24
|
+
public static void Open(string changelog, bool showInstallBtn, PackageVersionInfo versionInfo)
|
|
23
25
|
{
|
|
24
26
|
_changelog = changelog;
|
|
27
|
+
_versionInfo = versionInfo;
|
|
28
|
+
_showInstallBtn = showInstallBtn;
|
|
25
29
|
var win = GetWindow<ChangelogPreviewerWindow>();
|
|
26
30
|
win.minSize = new Vector2(600, 800);
|
|
27
31
|
win.titleContent = new GUIContent("更新日志");
|
|
@@ -29,6 +33,8 @@ namespace TyphoonUnitySDK
|
|
|
29
33
|
}
|
|
30
34
|
|
|
31
35
|
private static string _changelog;
|
|
36
|
+
private static PackageVersionInfo _versionInfo;
|
|
37
|
+
private static bool _showInstallBtn = false;
|
|
32
38
|
private static Vector2 _scroll;
|
|
33
39
|
private static GUIStyle _styleTxt;
|
|
34
40
|
|
|
@@ -67,6 +73,13 @@ namespace TyphoonUnitySDK
|
|
|
67
73
|
_scroll = GUILayout.BeginScrollView(_scroll);
|
|
68
74
|
GUILayout.TextArea(Changelog, StyleTxt);
|
|
69
75
|
GUILayout.EndScrollView();
|
|
76
|
+
if (_showInstallBtn && _versionInfo != null)
|
|
77
|
+
{
|
|
78
|
+
if (GUILayout.Button("安装", GUILayout.Height(32)))
|
|
79
|
+
{
|
|
80
|
+
UniEditor.UpdateInstallVersion(_versionInfo);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
70
83
|
}
|
|
71
84
|
}
|
|
72
85
|
}
|
|
@@ -23,7 +23,7 @@ namespace TyphoonUnitySDK
|
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
25
|
|
|
26
|
-
public string GetWriteTimeDateString() => WriteTimeStamp > 0 ? WriteTime.Date.
|
|
26
|
+
public string GetWriteTimeDateString() => WriteTimeStamp > 0 ? WriteTime.Date.ToShortDateString() : "";
|
|
27
27
|
|
|
28
28
|
|
|
29
29
|
public DateTime PublishTime
|
|
@@ -36,7 +36,12 @@ namespace TyphoonUnitySDK
|
|
|
36
36
|
}
|
|
37
37
|
|
|
38
38
|
public string GetPublishTimeDateString() =>
|
|
39
|
-
PublishTimeStamp > 0 ? PublishTime.Date.
|
|
39
|
+
PublishTimeStamp > 0 ? PublishTime.Date.ToShortDateString() : "";
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
public string GetPublishTimeString() =>
|
|
43
|
+
PublishTimeStamp > 0 ? $"{GetPublishTimeDateString()} {PublishTime.ToShortTimeString()}" : "";
|
|
44
|
+
|
|
40
45
|
|
|
41
46
|
public PackageVersionInfo()
|
|
42
47
|
{
|
|
@@ -10,14 +10,53 @@ namespace TyphoonUnitySDK
|
|
|
10
10
|
public class HistoryVersionWindow : EditorWindow
|
|
11
11
|
{
|
|
12
12
|
private static Color SelectColor =>
|
|
13
|
-
EditorGUIUtility.isProSkin ? new Color(0.
|
|
13
|
+
EditorGUIUtility.isProSkin ? new Color(0.03f, 0.39f, 0.7f, 1f) : new Color(0.69f, 0.7f, 0.69f, 1f);
|
|
14
14
|
|
|
15
15
|
private static Color NormalColor =>
|
|
16
16
|
EditorGUIUtility.isProSkin ? new Color(0.35f, 0.35f, 0.35f, 1f) : new Color(0.87f, 0.87f, 0.87f, 1f);
|
|
17
17
|
|
|
18
18
|
|
|
19
19
|
private const float MENU_WIDTH = 268;
|
|
20
|
-
|
|
20
|
+
|
|
21
|
+
private static GUIStyle _styleMenuBtnLabel = null;
|
|
22
|
+
|
|
23
|
+
private static GUIStyle StyleMenuBtnLabel
|
|
24
|
+
{
|
|
25
|
+
get
|
|
26
|
+
{
|
|
27
|
+
if (_styleMenuBtnLabel == null)
|
|
28
|
+
{
|
|
29
|
+
_styleMenuBtnLabel = new GUIStyle("label");
|
|
30
|
+
_styleMenuBtnLabel.padding = new RectOffset(2, 2, 2, 2);
|
|
31
|
+
_styleMenuBtnLabel.margin = new RectOffset(2, 2, 2, 2);
|
|
32
|
+
_styleMenuBtnLabel.border = new RectOffset(2, 2, 2, 2);
|
|
33
|
+
_styleMenuBtnLabel.alignment = TextAnchor.MiddleLeft;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
return _styleMenuBtnLabel;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
private static GUIStyle _styleMenuBtn = null;
|
|
41
|
+
|
|
42
|
+
private static GUIStyle StyleMenuBtn
|
|
43
|
+
{
|
|
44
|
+
get
|
|
45
|
+
{
|
|
46
|
+
if (_styleMenuBtn == null)
|
|
47
|
+
{
|
|
48
|
+
_styleMenuBtn = new GUIStyle("button");
|
|
49
|
+
_styleMenuBtn.padding = new RectOffset(2, 2, 2, 2);
|
|
50
|
+
_styleMenuBtn.margin = new RectOffset(2, 2, 2, 2);
|
|
51
|
+
_styleMenuBtn.border = new RectOffset(0, 0, 0, 0);
|
|
52
|
+
_styleMenuBtn.alignment = TextAnchor.MiddleLeft;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
return _styleMenuBtn;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
private static List<PackageVersionInfo> _history = null;
|
|
21
60
|
|
|
22
61
|
public List<PackageVersionInfo> History
|
|
23
62
|
{
|
|
@@ -25,7 +64,13 @@ namespace TyphoonUnitySDK
|
|
|
25
64
|
{
|
|
26
65
|
if (_history == null)
|
|
27
66
|
{
|
|
28
|
-
_history =
|
|
67
|
+
_history = new List<PackageVersionInfo>();
|
|
68
|
+
var all = CheckUpdateCacheData.Default.AllVersions;
|
|
69
|
+
if (all != null)
|
|
70
|
+
{
|
|
71
|
+
_history = new List<PackageVersionInfo>(all);
|
|
72
|
+
}
|
|
73
|
+
|
|
29
74
|
_history.Sort((a, b) => { return b.PublishTimeStamp.CompareTo(a.PublishTimeStamp); });
|
|
30
75
|
}
|
|
31
76
|
|
|
@@ -33,14 +78,34 @@ namespace TyphoonUnitySDK
|
|
|
33
78
|
}
|
|
34
79
|
}
|
|
35
80
|
|
|
81
|
+
private PackageVersionInfo _currentVersion = null;
|
|
82
|
+
|
|
83
|
+
private PackageVersionInfo CurrentVersion
|
|
84
|
+
{
|
|
85
|
+
get
|
|
86
|
+
{
|
|
87
|
+
if (_currentVersion == null)
|
|
88
|
+
{
|
|
89
|
+
_currentVersion = UniEditor.LoadCurrentVersionInfo();
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
return _currentVersion;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
|
|
36
97
|
private static Vector2 _scroll;
|
|
37
98
|
private static PackageVersionInfo _select;
|
|
99
|
+
private Vector2 _logScroll;
|
|
100
|
+
|
|
101
|
+
private string _inputSearch;
|
|
38
102
|
|
|
39
103
|
public static void Open()
|
|
40
104
|
{
|
|
105
|
+
_history = null;
|
|
41
106
|
var win = GetWindow<HistoryVersionWindow>();
|
|
42
|
-
win.titleContent = new GUIContent("
|
|
43
|
-
win.minSize = new Vector2(
|
|
107
|
+
win.titleContent = new GUIContent("所有版本");
|
|
108
|
+
win.minSize = new Vector2(720, 480);
|
|
44
109
|
win.Show();
|
|
45
110
|
}
|
|
46
111
|
|
|
@@ -56,6 +121,19 @@ namespace TyphoonUnitySDK
|
|
|
56
121
|
var rectLeft = rect;
|
|
57
122
|
rectLeft.width = MENU_WIDTH;
|
|
58
123
|
DrawLeftMenu(rectLeft);
|
|
124
|
+
var rectLine = rectLeft;
|
|
125
|
+
rectLine.x = rectLeft.xMax;
|
|
126
|
+
rectLine.width = 1;
|
|
127
|
+
var center = rectLine.center;
|
|
128
|
+
var draw = rectLine;
|
|
129
|
+
draw.height -= 8;
|
|
130
|
+
draw.center = center;
|
|
131
|
+
EditorGUI.DrawRect(draw, Color.black);
|
|
132
|
+
|
|
133
|
+
var rectRight = rectLine;
|
|
134
|
+
rectRight.x = rectLine.xMax;
|
|
135
|
+
rectRight.width = rect.xMax - rectRight.x;
|
|
136
|
+
DrawRightGUI(rectRight);
|
|
59
137
|
}
|
|
60
138
|
}
|
|
61
139
|
|
|
@@ -65,23 +143,154 @@ namespace TyphoonUnitySDK
|
|
|
65
143
|
var center = rect.center;
|
|
66
144
|
rectView.width -= 8;
|
|
67
145
|
rectView.height -= 8;
|
|
146
|
+
rectView.center = center;
|
|
68
147
|
GUILayout.BeginArea(rectView);
|
|
148
|
+
_inputSearch = GUILayout.TextField(_inputSearch);
|
|
149
|
+
var low = string.IsNullOrWhiteSpace(_inputSearch) ? null : _inputSearch.ToLower();
|
|
69
150
|
_scroll = GUILayout.BeginScrollView(_scroll);
|
|
70
151
|
|
|
71
152
|
foreach (var info in History)
|
|
72
153
|
{
|
|
154
|
+
var publishTimeString = info.GetPublishTimeDateString();
|
|
155
|
+
var versionString = info.Version;
|
|
156
|
+
if (low != null)
|
|
157
|
+
{
|
|
158
|
+
if (!publishTimeString.ToLower().Contains(low) && !versionString.Contains(low))
|
|
159
|
+
{
|
|
160
|
+
continue;
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
|
|
73
164
|
var isSelect = _select == info;
|
|
74
|
-
|
|
165
|
+
StyleMenuBtnLabel.fontStyle = isSelect ? FontStyle.Bold : FontStyle.Normal;
|
|
166
|
+
if (GUILayout.Button("", StyleMenuBtn, GUILayout.Height(40)))
|
|
167
|
+
{
|
|
168
|
+
_select = info;
|
|
169
|
+
_logScroll = Vector2.zero;
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
var last = GUILayoutUtility.GetLastRect();
|
|
173
|
+
if (isSelect)
|
|
174
|
+
{
|
|
175
|
+
EditorGUI.DrawRect(last, SelectColor * 0.7f);
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
var rectInfo = last;
|
|
179
|
+
center = rectInfo.center;
|
|
180
|
+
rectInfo.width -= 4;
|
|
181
|
+
rectInfo.height -= 4;
|
|
182
|
+
rectInfo.center = center;
|
|
183
|
+
var rectVersion = rectInfo;
|
|
184
|
+
rectVersion.height = 16;
|
|
185
|
+
|
|
186
|
+
GUI.Label(rectVersion, $"v{info.Version}", StyleMenuBtnLabel);
|
|
187
|
+
var rectPublishTime = rectVersion;
|
|
188
|
+
rectPublishTime.y += rectPublishTime.height;
|
|
189
|
+
GUI.Label(rectPublishTime, $"发布时间: {info.GetPublishTimeString()}", StyleMenuBtnLabel);
|
|
190
|
+
|
|
191
|
+
var used = CurrentVersion.Version == info.Version;
|
|
192
|
+
if (used)
|
|
193
|
+
{
|
|
194
|
+
var rectFlag = rectInfo;
|
|
195
|
+
rectFlag.width = 120;
|
|
196
|
+
rectFlag.height = 16;
|
|
197
|
+
rectFlag.center = rectInfo.center;
|
|
198
|
+
rectFlag.x = rectInfo.xMax - rectFlag.width;
|
|
199
|
+
rectFlag.x -= 8;
|
|
200
|
+
GUIDrawer.DrawKeynotesAlignmentRight(rectFlag, "使用中");
|
|
201
|
+
}
|
|
75
202
|
}
|
|
76
203
|
|
|
204
|
+
GUILayout.Space(30);
|
|
77
205
|
GUILayout.EndScrollView();
|
|
78
206
|
GUILayout.EndArea();
|
|
79
207
|
}
|
|
80
208
|
|
|
81
209
|
|
|
210
|
+
private void DrawRightGUI(Rect rect)
|
|
211
|
+
{
|
|
212
|
+
var view = rect;
|
|
213
|
+
view.height -= 48;
|
|
214
|
+
var center = view.center;
|
|
215
|
+
var draw = view;
|
|
216
|
+
draw.width -= 8;
|
|
217
|
+
draw.height -= 8;
|
|
218
|
+
draw.center = center;
|
|
219
|
+
GUILayout.BeginArea(draw);
|
|
220
|
+
if (_select == null)
|
|
221
|
+
{
|
|
222
|
+
GUILayout.Label("请从左侧选择配置", Styles.rbold_label);
|
|
223
|
+
}
|
|
224
|
+
else
|
|
225
|
+
{
|
|
226
|
+
var title = $"当前选择: v{_select.Version}";
|
|
227
|
+
if (_select.IsMajor)
|
|
228
|
+
{
|
|
229
|
+
title += $" [重大修复版本]";
|
|
230
|
+
}
|
|
231
|
+
|
|
232
|
+
GUILayout.Label(title, Styles.rbold_title, GUILayout.Height(24));
|
|
233
|
+
GUILayout.Label($"发布时间: {_select.GetPublishTimeString()}", Styles.rlabel_italic);
|
|
234
|
+
GUILayout.Space(5);
|
|
235
|
+
GUILayout.Label("版本更新日志:", Styles.rbold_label);
|
|
236
|
+
if (string.IsNullOrWhiteSpace(_select.VersionChangeLog))
|
|
237
|
+
{
|
|
238
|
+
GUILayout.Label("无");
|
|
239
|
+
}
|
|
240
|
+
else
|
|
241
|
+
{
|
|
242
|
+
_logScroll = GUILayout.BeginScrollView(_logScroll, false, false, GUIStyle.none, GUIStyle.none);
|
|
243
|
+
GUILayout.Label(_select.VersionChangeLog);
|
|
244
|
+
GUILayout.EndScrollView();
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
GUILayout.EndArea();
|
|
249
|
+
|
|
250
|
+
if (_select != null)
|
|
251
|
+
{
|
|
252
|
+
//绘制底部信息栏
|
|
253
|
+
var rectBottom = view;
|
|
254
|
+
rectBottom.y = view.yMax;
|
|
255
|
+
rectBottom.height = rect.yMax - rectBottom.y;
|
|
256
|
+
rectBottom.width -= 4;
|
|
257
|
+
var line = rectBottom;
|
|
258
|
+
line.height = 1;
|
|
259
|
+
line.y = rectBottom.y - line.height;
|
|
260
|
+
var colorLine = EditorGUIUtility.isProSkin
|
|
261
|
+
? new Color(0.14f, 0.14f, 0.14f, 1f)
|
|
262
|
+
: new Color(0.6f, 0.6f, 0.6f, 1f);
|
|
263
|
+
var colorBg = EditorGUIUtility.isProSkin
|
|
264
|
+
? new Color(0.24f, 0.24f, 0.24f, 1f)
|
|
265
|
+
: new Color(0.8f, 0.8f, 0.8f, 1f);
|
|
266
|
+
EditorGUI.DrawRect(rectBottom, colorBg);
|
|
267
|
+
EditorGUI.DrawRect(line, colorLine);
|
|
268
|
+
|
|
269
|
+
var btnInstallRect = rectBottom;
|
|
270
|
+
btnInstallRect.width = 120;
|
|
271
|
+
btnInstallRect.x = rectBottom.xMax - btnInstallRect.width;
|
|
272
|
+
center = btnInstallRect.center;
|
|
273
|
+
draw = btnInstallRect;
|
|
274
|
+
draw.width -= 8;
|
|
275
|
+
draw.height -= 8;
|
|
276
|
+
draw.center = center;
|
|
277
|
+
var temEnable = GUI.enabled;
|
|
278
|
+
var used = CurrentVersion.Version == _select.Version;
|
|
279
|
+
GUI.enabled = !used;
|
|
280
|
+
var txt = used ? "使用中" : $"安装";
|
|
281
|
+
if (GUI.Button(draw, txt, Styles.rbutton_bold))
|
|
282
|
+
{
|
|
283
|
+
UniEditor.UpdateInstallVersion(_select);
|
|
284
|
+
}
|
|
285
|
+
|
|
286
|
+
GUI.enabled = temEnable;
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
|
|
290
|
+
|
|
82
291
|
private void DrawMenuButton(bool select, string version, string date)
|
|
83
292
|
{
|
|
84
|
-
GUILayout.Button("",
|
|
293
|
+
GUILayout.Button("", GUILayout.Height(32));
|
|
85
294
|
var rect = GUILayoutUtility.GetLastRect();
|
|
86
295
|
if (select)
|
|
87
296
|
{
|
package/Editor/PublishWindow.cs
CHANGED
|
@@ -336,11 +336,11 @@ namespace TyphoonUnitySDK
|
|
|
336
336
|
draw.width -= 4;
|
|
337
337
|
draw.height -= 4;
|
|
338
338
|
draw.center = center;
|
|
339
|
-
if (GUI.Button(draw, "
|
|
339
|
+
if (GUI.Button(draw, "所有版本", Styles.rbutton))
|
|
340
340
|
{
|
|
341
341
|
if (CheckUpdateCacheData.Default.AllVersions.Count < 0)
|
|
342
342
|
{
|
|
343
|
-
EditorUtility.DisplayDialog("提示", "
|
|
343
|
+
EditorUtility.DisplayDialog("提示", "版本读取失败", "是");
|
|
344
344
|
}
|
|
345
345
|
else
|
|
346
346
|
{
|
package/Editor/UniEditor.cs
CHANGED
|
@@ -836,9 +836,9 @@ namespace TyphoonUnitySDK
|
|
|
836
836
|
}
|
|
837
837
|
|
|
838
838
|
//检查更新
|
|
839
|
-
public static bool CheckUpdate()
|
|
839
|
+
public static bool CheckUpdate(bool force = false)
|
|
840
840
|
{
|
|
841
|
-
if (!Preferences.Default.CheckUpdate)
|
|
841
|
+
if (!Preferences.Default.CheckUpdate && force == false)
|
|
842
842
|
{
|
|
843
843
|
return false;
|
|
844
844
|
}
|
|
@@ -856,7 +856,7 @@ namespace TyphoonUnitySDK
|
|
|
856
856
|
{
|
|
857
857
|
case 0:
|
|
858
858
|
{
|
|
859
|
-
|
|
859
|
+
UpdateInstallVersion(CheckUpdateCacheData.Default.Latest);
|
|
860
860
|
}
|
|
861
861
|
break;
|
|
862
862
|
case 1:
|
|
@@ -866,8 +866,8 @@ namespace TyphoonUnitySDK
|
|
|
866
866
|
break;
|
|
867
867
|
case 2:
|
|
868
868
|
{
|
|
869
|
-
|
|
870
|
-
|
|
869
|
+
ChangelogPreviewerWindow.Open(CheckUpdateCacheData.Default.CombineChangelog(), true,
|
|
870
|
+
CheckUpdateCacheData.Default.Latest);
|
|
871
871
|
}
|
|
872
872
|
break;
|
|
873
873
|
}
|
|
@@ -880,9 +880,9 @@ namespace TyphoonUnitySDK
|
|
|
880
880
|
}
|
|
881
881
|
|
|
882
882
|
//检查是否存在重大版本修复
|
|
883
|
-
public static bool CheckMajor()
|
|
883
|
+
public static bool CheckMajor(bool force = false)
|
|
884
884
|
{
|
|
885
|
-
if (!Preferences.Default.CheckMajor)
|
|
885
|
+
if (!Preferences.Default.CheckMajor && force == false)
|
|
886
886
|
{
|
|
887
887
|
return false;
|
|
888
888
|
}
|
|
@@ -917,7 +917,7 @@ namespace TyphoonUnitySDK
|
|
|
917
917
|
{
|
|
918
918
|
case 0:
|
|
919
919
|
{
|
|
920
|
-
|
|
920
|
+
UpdateInstallVersion(CheckUpdateCacheData.Default.Latest);
|
|
921
921
|
}
|
|
922
922
|
break;
|
|
923
923
|
case 1:
|
|
@@ -927,8 +927,8 @@ namespace TyphoonUnitySDK
|
|
|
927
927
|
break;
|
|
928
928
|
case 2:
|
|
929
929
|
{
|
|
930
|
-
|
|
931
|
-
|
|
930
|
+
ChangelogPreviewerWindow.Open(CheckUpdateCacheData.Default.CombineChangelog(), true,
|
|
931
|
+
CheckUpdateCacheData.Default.Latest);
|
|
932
932
|
}
|
|
933
933
|
break;
|
|
934
934
|
}
|
|
@@ -962,11 +962,11 @@ namespace TyphoonUnitySDK
|
|
|
962
962
|
if (flag)
|
|
963
963
|
{
|
|
964
964
|
//检查完毕
|
|
965
|
-
var popUp = CheckMajor();
|
|
965
|
+
var popUp = CheckMajor(true);
|
|
966
966
|
//如果没有检查完毕
|
|
967
967
|
if (!popUp)
|
|
968
968
|
{
|
|
969
|
-
popUp = CheckUpdate();
|
|
969
|
+
popUp = CheckUpdate(true);
|
|
970
970
|
}
|
|
971
971
|
|
|
972
972
|
if (!popUp)
|
|
@@ -1115,5 +1115,59 @@ namespace TyphoonUnitySDK
|
|
|
1115
1115
|
}
|
|
1116
1116
|
}
|
|
1117
1117
|
}
|
|
1118
|
+
|
|
1119
|
+
/// <summary>
|
|
1120
|
+
/// 更新安装版本
|
|
1121
|
+
/// </summary>
|
|
1122
|
+
public static void UpdateInstallVersion(PackageVersionInfo versionInfo)
|
|
1123
|
+
{
|
|
1124
|
+
//判断是否为upm包的模式
|
|
1125
|
+
var root = Path.GetFullPath(PathRoot);
|
|
1126
|
+
var projPath = Path.GetFullPath(Application.dataPath);
|
|
1127
|
+
var current = LoadCurrentVersionInfo();
|
|
1128
|
+
if (current.Version == versionInfo.Version)
|
|
1129
|
+
{
|
|
1130
|
+
EditorUtility.DisplayDialog("提示", "当前已经是目标版本了", "是");
|
|
1131
|
+
return;
|
|
1132
|
+
}
|
|
1133
|
+
|
|
1134
|
+
if (root.Contains(projPath))
|
|
1135
|
+
{
|
|
1136
|
+
EditorUtility.DisplayDialog("提示", "安装失败,只支持unity package manager 模式,本地包请手动进行更新", "是");
|
|
1137
|
+
return;
|
|
1138
|
+
}
|
|
1139
|
+
|
|
1140
|
+
var click = EditorUtility.DisplayDialog("提示",
|
|
1141
|
+
$"更新版本到 v{versionInfo.Version} ?\n发布时间:{versionInfo.GetPublishTimeString()}",
|
|
1142
|
+
"是");
|
|
1143
|
+
if (click)
|
|
1144
|
+
{
|
|
1145
|
+
//修改package.json
|
|
1146
|
+
try
|
|
1147
|
+
{
|
|
1148
|
+
var package = $"Packages/manifest.json";
|
|
1149
|
+
var json = File.ReadAllText(package);
|
|
1150
|
+
var map = json.ToXObject<Dictionary<string, object>>();
|
|
1151
|
+
var dependencies = map["dependencies"].ToString();
|
|
1152
|
+
var depMap = dependencies.ToXObject<Dictionary<string, string>>();
|
|
1153
|
+
foreach (var pair in depMap)
|
|
1154
|
+
{
|
|
1155
|
+
Debug.Log($"{pair.Key},{pair.Value}");
|
|
1156
|
+
}
|
|
1157
|
+
|
|
1158
|
+
//修改版本号
|
|
1159
|
+
depMap["com.typhoon.unitysdk"] = $"{versionInfo.Version}";
|
|
1160
|
+
map["dependencies"] = depMap.ToXJson();
|
|
1161
|
+
var final = map.ToXJson();
|
|
1162
|
+
File.WriteAllText(final, package);
|
|
1163
|
+
Debug.LogError($"更改成功,刷新工程...");
|
|
1164
|
+
AssetDatabase.Refresh();
|
|
1165
|
+
}
|
|
1166
|
+
catch (Exception e)
|
|
1167
|
+
{
|
|
1168
|
+
Debug.LogError($"安装失败:{e}");
|
|
1169
|
+
}
|
|
1170
|
+
}
|
|
1171
|
+
}
|
|
1118
1172
|
}
|
|
1119
1173
|
}
|
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"com.typhoon.unitysdk","displayName":"typhoon unity sdk","version":"1.0.
|
|
1
|
+
{"name":"com.typhoon.unitysdk","displayName":"typhoon unity sdk","version":"1.0.51","description":"","unity":"2018.1","type":"tool","hideInEditor":false,"author":{"name":"Jan Zhang","email":"","url":""},"changelogUrl":"","documentationUrl":"","keywords":["typhoon"],"license":"","licensesUrl":"","customDependencies":[{"PackageName":"com.unity.nuget.newtonsoft-json","Value":"2.0.0"}],"version_log":"## [1.0.51] - 2023-12-10\r\n\r\n### 修复\n* 修复检查自动更新的bug\r\n\r\n### 优化\n* 自动更新是查看日志窗口添加安装按钮\r\n\r\n","major_flag":true,"write_time_stamp":1702190445000,"others":{"items":[]},"dependencies":{"com.unity.nuget.newtonsoft-json":"2.0.0"}}
|