mirror of
https://github.com/X1a0He/Adobe-Downloader.git
synced 2025-11-25 03:14:57 +08:00
release: v2.1.0
This commit is contained in:
@@ -24,7 +24,7 @@
|
||||
3C60E1C22CE3AA0B00600C07 /* CopyFiles */ = {
|
||||
isa = PBXCopyFilesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
dstPath = Contents/Library/LaunchServices;
|
||||
dstPath = Contents/Library/LaunchDaemons;
|
||||
dstSubfolderSpec = 1;
|
||||
files = (
|
||||
3C60E1C32CE3AA1B00600C07 /* com.x1a0he.macOS.Adobe-Downloader.helper in CopyFiles */,
|
||||
@@ -48,9 +48,22 @@
|
||||
};
|
||||
/* End PBXFileSystemSynchronizedBuildFileExceptionSet section */
|
||||
|
||||
/* Begin PBXFileSystemSynchronizedGroupBuildPhaseMembershipExceptionSet section */
|
||||
3C4396F72E2C0AC20052FBEB /* Exceptions for "AdobeDownloaderHelperTool" folder in "Copy Files" phase from "Adobe Downloader" target */ = {
|
||||
isa = PBXFileSystemSynchronizedGroupBuildPhaseMembershipExceptionSet;
|
||||
buildPhase = 3C60E1C22CE3AA0B00600C07 /* CopyFiles */;
|
||||
membershipExceptions = (
|
||||
"com.x1a0he.macOS.Adobe-Downloader.helper.plist",
|
||||
);
|
||||
};
|
||||
/* End PBXFileSystemSynchronizedGroupBuildPhaseMembershipExceptionSet section */
|
||||
|
||||
/* Begin PBXFileSystemSynchronizedRootGroup section */
|
||||
3C60E16E2CE3A6CB00600C07 /* AdobeDownloaderHelperTool */ = {
|
||||
isa = PBXFileSystemSynchronizedRootGroup;
|
||||
exceptions = (
|
||||
3C4396F72E2C0AC20052FBEB /* Exceptions for "AdobeDownloaderHelperTool" folder in "Copy Files" phase from "Adobe Downloader" target */,
|
||||
);
|
||||
path = AdobeDownloaderHelperTool;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
@@ -165,7 +178,7 @@
|
||||
attributes = {
|
||||
BuildIndependentTargetsInParallel = 1;
|
||||
LastSwiftUpdateCheck = 1610;
|
||||
LastUpgradeCheck = 1620;
|
||||
LastUpgradeCheck = 1640;
|
||||
TargetAttributes = {
|
||||
3C60E16C2CE3A6CB00600C07 = {
|
||||
CreatedOnToolsVersion = 16.1;
|
||||
@@ -232,7 +245,6 @@
|
||||
CODE_SIGN_ENTITLEMENTS = AdobeDownloaderHelperTool/AdobeDownloaderHelperTool.entitlements;
|
||||
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "Apple Development";
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
DEVELOPMENT_TEAM = TG862GVKHK;
|
||||
ENABLE_HARDENED_RUNTIME = NO;
|
||||
ENABLE_USER_SCRIPT_SANDBOXING = NO;
|
||||
INFOPLIST_FILE = AdobeDownloaderHelperTool/Info.plist;
|
||||
@@ -251,6 +263,7 @@
|
||||
);
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "com.x1a0he.macOS.Adobe-Downloader.helper";
|
||||
PRODUCT_NAME = "com.x1a0he.macOS.Adobe-Downloader.helper";
|
||||
REGISTER_APP_GROUPS = YES;
|
||||
SWIFT_VERSION = 5.0;
|
||||
};
|
||||
name = Debug;
|
||||
@@ -261,7 +274,6 @@
|
||||
CODE_SIGN_ENTITLEMENTS = AdobeDownloaderHelperTool/AdobeDownloaderHelperTool.entitlements;
|
||||
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "Apple Development";
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
DEVELOPMENT_TEAM = TG862GVKHK;
|
||||
ENABLE_HARDENED_RUNTIME = NO;
|
||||
ENABLE_USER_SCRIPT_SANDBOXING = NO;
|
||||
INFOPLIST_FILE = AdobeDownloaderHelperTool/Info.plist;
|
||||
@@ -279,6 +291,7 @@
|
||||
);
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "com.x1a0he.macOS.Adobe-Downloader.helper";
|
||||
PRODUCT_NAME = "com.x1a0he.macOS.Adobe-Downloader.helper";
|
||||
REGISTER_APP_GROUPS = YES;
|
||||
SWIFT_VERSION = 5.0;
|
||||
};
|
||||
name = Release;
|
||||
@@ -319,6 +332,7 @@
|
||||
COPY_PHASE_STRIP = NO;
|
||||
DEAD_CODE_STRIPPING = YES;
|
||||
DEBUG_INFORMATION_FORMAT = dwarf;
|
||||
DEVELOPMENT_TEAM = TG862GVKHK;
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
ENABLE_TESTABILITY = YES;
|
||||
ENABLE_USER_SCRIPT_SANDBOXING = NO;
|
||||
@@ -384,6 +398,7 @@
|
||||
COPY_PHASE_STRIP = NO;
|
||||
DEAD_CODE_STRIPPING = YES;
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
DEVELOPMENT_TEAM = TG862GVKHK;
|
||||
ENABLE_NS_ASSERTIONS = NO;
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
ENABLE_USER_SCRIPT_SANDBOXING = NO;
|
||||
@@ -416,10 +431,9 @@
|
||||
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "Apple Development";
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
COMBINE_HIDPI_IMAGES = YES;
|
||||
CURRENT_PROJECT_VERSION = 202;
|
||||
CURRENT_PROJECT_VERSION = 210;
|
||||
DEAD_CODE_STRIPPING = YES;
|
||||
DEVELOPMENT_ASSET_PATHS = "\"Adobe Downloader/Preview Content\"";
|
||||
DEVELOPMENT_TEAM = TG862GVKHK;
|
||||
ENABLE_HARDENED_RUNTIME = NO;
|
||||
ENABLE_PREVIEWS = YES;
|
||||
ENABLE_USER_SCRIPT_SANDBOXING = NO;
|
||||
@@ -431,8 +445,8 @@
|
||||
"$(inherited)",
|
||||
"@executable_path/../Frameworks",
|
||||
);
|
||||
MACOSX_DEPLOYMENT_TARGET = 12.0;
|
||||
MARKETING_VERSION = 2.0.2;
|
||||
MACOSX_DEPLOYMENT_TARGET = 13.0;
|
||||
MARKETING_VERSION = 2.1;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "com.x1a0he.macOS.Adobe-Downloader";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SWIFT_EMIT_LOC_STRINGS = YES;
|
||||
@@ -450,10 +464,9 @@
|
||||
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "Apple Development";
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
COMBINE_HIDPI_IMAGES = YES;
|
||||
CURRENT_PROJECT_VERSION = 202;
|
||||
CURRENT_PROJECT_VERSION = 210;
|
||||
DEAD_CODE_STRIPPING = YES;
|
||||
DEVELOPMENT_ASSET_PATHS = "\"Adobe Downloader/Preview Content\"";
|
||||
DEVELOPMENT_TEAM = TG862GVKHK;
|
||||
ENABLE_HARDENED_RUNTIME = NO;
|
||||
ENABLE_PREVIEWS = YES;
|
||||
ENABLE_USER_SCRIPT_SANDBOXING = NO;
|
||||
@@ -465,8 +478,8 @@
|
||||
"$(inherited)",
|
||||
"@executable_path/../Frameworks",
|
||||
);
|
||||
MACOSX_DEPLOYMENT_TARGET = 12.0;
|
||||
MARKETING_VERSION = 2.0.2;
|
||||
MACOSX_DEPLOYMENT_TARGET = 13.0;
|
||||
MARKETING_VERSION = 2.1;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "com.x1a0he.macOS.Adobe-Downloader";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SWIFT_EMIT_LOC_STRINGS = YES;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "1620"
|
||||
LastUpgradeVersion = "1640"
|
||||
version = "1.7">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
@@ -31,7 +31,7 @@
|
||||
shouldAutocreateTestPlan = "YES">
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
buildConfiguration = "Debug"
|
||||
buildConfiguration = "Release"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
launchStyle = "0"
|
||||
|
||||
@@ -20,22 +20,6 @@
|
||||
landmarkType = "0">
|
||||
</BreakpointContent>
|
||||
</BreakpointProxy>
|
||||
<BreakpointProxy
|
||||
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
|
||||
<BreakpointContent
|
||||
uuid = "1C96B561-A597-47BB-9DD8-F398805CB1B5"
|
||||
shouldBeEnabled = "No"
|
||||
ignoreCount = "0"
|
||||
continueAfterRunningActions = "No"
|
||||
filePath = "Adobe Downloader/Utils/InstallManager.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "81"
|
||||
endingLineNumber = "81"
|
||||
landmarkName = "getAdobeInstallLogDetails()"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
</BreakpointProxy>
|
||||
<BreakpointProxy
|
||||
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
|
||||
<BreakpointContent
|
||||
|
||||
@@ -110,7 +110,7 @@ struct CleanConfigView: View {
|
||||
if helperStatus == .installed {
|
||||
ModernPrivilegedHelperManager.shared.executeCommand("open -a Terminal \(scriptURL.path)") { output in
|
||||
if output.starts(with: "Error") {
|
||||
alertMessage = "清空配置失败: \(output)"
|
||||
alertMessage = String(localized: "清空配置失败: \(output)")
|
||||
showAlert = true
|
||||
} else {
|
||||
DispatchQueue.main.asyncAfter(deadline: .now() + 0.5) {
|
||||
@@ -136,7 +136,7 @@ struct CleanConfigView: View {
|
||||
}
|
||||
|
||||
} catch {
|
||||
alertMessage = "清空配置失败: \(error.localizedDescription)"
|
||||
alertMessage = String(localized: "清空配置失败: \(error.localizedDescription)")
|
||||
showAlert = true
|
||||
}
|
||||
}
|
||||
|
||||
@@ -101,7 +101,7 @@ struct CustomDownloadView: View {
|
||||
|
||||
for dependencyInfo in dependencyInfos {
|
||||
await MainActor.run {
|
||||
loadingState.currentTask = "正在处理 \(dependencyInfo.sapCode) 的包信息..."
|
||||
loadingState.currentTask = String(localized: "正在处理 \(dependencyInfo.sapCode) 的包信息...")
|
||||
}
|
||||
|
||||
let jsonString = try await globalNetworkService.getApplicationInfo(buildGuid: dependencyInfo.buildGuid)
|
||||
|
||||
@@ -141,7 +141,7 @@ struct NavigationCustomDownloadView: View {
|
||||
|
||||
for dependencyInfo in dependencyInfos {
|
||||
await MainActor.run {
|
||||
loadingState.currentTask = "正在处理 \(dependencyInfo.sapCode) 的包信息..."
|
||||
loadingState.currentTask = String(localized: "正在处理 \(dependencyInfo.sapCode) 的包信息...")
|
||||
}
|
||||
|
||||
let jsonString = try await globalNetworkService.getApplicationInfo(buildGuid: dependencyInfo.buildGuid)
|
||||
|
||||
@@ -1654,7 +1654,7 @@
|
||||
"en" : {
|
||||
"stringUnit" : {
|
||||
"state" : "translated",
|
||||
"value" : "Existed"
|
||||
"value" : "Exists"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -2570,7 +2570,6 @@
|
||||
}
|
||||
},
|
||||
"正在处理 %@ 的包信息..." : {
|
||||
"extractionState" : "stale",
|
||||
"localizations" : {
|
||||
"en" : {
|
||||
"stringUnit" : {
|
||||
@@ -2779,6 +2778,9 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"没有写入权限" : {
|
||||
|
||||
},
|
||||
"没有找到产品" : {
|
||||
"localizations" : {
|
||||
@@ -2871,6 +2873,16 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"清空配置失败: %@" : {
|
||||
"localizations" : {
|
||||
"en" : {
|
||||
"stringUnit" : {
|
||||
"state" : "translated",
|
||||
"value" : "Failed to clear configuration: %@"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"点击切换选择状态" : {
|
||||
"localizations" : {
|
||||
"en" : {
|
||||
@@ -3027,7 +3039,7 @@
|
||||
"en" : {
|
||||
"stringUnit" : {
|
||||
"state" : "translated",
|
||||
"value" : "Confirm Cancel"
|
||||
"value" : "Confirm"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -3266,6 +3278,9 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"自行安装命令" : {
|
||||
|
||||
},
|
||||
"自行安装命令:" : {
|
||||
"localizations" : {
|
||||
@@ -3544,6 +3559,16 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"选择要清理的内容" : {
|
||||
"localizations" : {
|
||||
"en" : {
|
||||
"stringUnit" : {
|
||||
"state" : "translated",
|
||||
"value" : "Select the content to clean up"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"通用" : {
|
||||
"localizations" : {
|
||||
"en" : {
|
||||
@@ -3634,6 +3659,16 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"重置程序" : {
|
||||
"localizations" : {
|
||||
"en" : {
|
||||
"stringUnit" : {
|
||||
"state" : "translated",
|
||||
"value" : "Reset Program"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"重试" : {
|
||||
"localizations" : {
|
||||
"en" : {
|
||||
|
||||
32
appcast.xml
32
appcast.xml
@@ -2,6 +2,38 @@
|
||||
<rss xmlns:sparkle="http://www.andymatuschak.org/xml-namespaces/sparkle" version="2.0">
|
||||
<channel>
|
||||
<title>Adobe Downloader</title>
|
||||
<item>
|
||||
<title>2.1</title>
|
||||
<pubDate>Sun, 20 Jul 2025 13:05:23 +0800</pubDate>
|
||||
<sparkle:version>210</sparkle:version>
|
||||
<sparkle:shortVersionString>2.1</sparkle:shortVersionString>
|
||||
<sparkle:minimumSystemVersion>13.0</sparkle:minimumSystemVersion>
|
||||
<enclosure url="https://github.com/X1a0He/Adobe-Downloader/releases/download/2.1.0/Adobe.Downloader.dmg" length="4859082" type="application/octet-stream" sparkle:edSignature="/kj3r/o+4sZSlFxS0/T0tI3ju7pKD1oFeJNhUh9++gafwnDYY1mVVy0CRzetVU3R6jw9uz+liEvl6rYmkrKKCg=="/>
|
||||
<description>
|
||||
<![CDATA[
|
||||
<style>ul{margin-top: 0;margin-bottom: 7;padding-left: 18;}</style>
|
||||
<h4>Adobe Downloader 更新日志: </h4>
|
||||
<ul>
|
||||
<li>1. 新增安装前终止 Setup 的特性</li>
|
||||
<li>2. 新增并发下载数控制</li>
|
||||
<li>3. 重写版本选择界面,采用 NavigationStack 的特性支持版本选择和自定义包选择</li>
|
||||
<li>4. 重写下载逻辑,支持线程池 + 分片的单任务多个包同时下载</li>
|
||||
<li>5. 重写 Helper 逻辑,使用 macOS 13.0+ 的 SMAppService 新特性</li>
|
||||
<li>6. 调整 Helper 链接状态的呼吸灯表现</li>
|
||||
</ul>
|
||||
<hr>
|
||||
<h4>Adobe Downloader Changes: </h4>
|
||||
<ul>
|
||||
<li>1. Added feature to cancel Setup before installation.</li>
|
||||
<li>2. Added concurrency control for downloads.</li>
|
||||
<li>3. Rewritten version selection interface using NavigationStack with package customization.</li>
|
||||
<li>4. Rewritten download logic with thread pooling + segmented downloading for parallel package fetching.</li>
|
||||
<li>5. Rewritten Helper logic using SMAppService \(macOS 13.0+\).</li>
|
||||
<li>6. Refined breathing light indicator for Helper connection status.</li>
|
||||
</ul>
|
||||
]]>
|
||||
</description>
|
||||
</item>
|
||||
<item>
|
||||
<title>2.0.2</title>
|
||||
<pubDate>Wed, 23 Apr 2025 23:06:42 +0800</pubDate>
|
||||
|
||||
16
readme-en.md
16
readme-en.md
@@ -8,7 +8,8 @@
|
||||
|
||||
> ⚠️ This repository does not support any PR submission
|
||||
|
||||
**🍎Only for macOS 12.0+.**
|
||||
**Due to the rewritten Helper in v2.1, the minimum macOS requirement is now 13.0+ (no longer supports 12.0).**
|
||||
**🍎Only for macOS 13.0+.**
|
||||
|
||||
> **If you like Adobe Downloader, or it helps you, please Star🌟 it.**
|
||||
>
|
||||
@@ -67,14 +68,15 @@ when prompted.
|
||||
|
||||
- For historical update logs, please go to [Update Log](update-log.md)
|
||||
|
||||
- 2025-04-23 Update Log
|
||||
- 2025-07-20 Update Log
|
||||
|
||||
```markdown
|
||||
1. Fixed an issue where dependency package detection on Intel-based models mistakenly identified osx10 as ARM architecture, leading to incorrect downloads.
|
||||
2. Resolved text display issues in the settings interface header.
|
||||
3. Adjusted the height of the download management interface from 500 to 600.
|
||||
4. Added functionality to copy all product and package list information in download tasks.
|
||||
5. Optimized display handling for the product Substance Alchemist.
|
||||
1. Added feature to cancel Setup before installation.
|
||||
2. Added concurrency control for downloads.
|
||||
3. Rewritten version selection interface using NavigationStack with package customization.
|
||||
4. Rewritten download logic with thread pooling + segmented downloading for parallel package fetching.
|
||||
5. Rewritten Helper logic using SMAppService \(macOS 13.0+\).
|
||||
6. Refined breathing light indicator for Helper connection status.
|
||||
```
|
||||
|
||||
### Language friendly
|
||||
|
||||
16
readme.md
16
readme.md
@@ -8,7 +8,8 @@
|
||||
|
||||
> ⚠️ 本仓库不支持任何 Pr 提交
|
||||
|
||||
**🍎仅支持 macOS 12.0+**
|
||||
**由于 2.1 版本重写了 Helper,所以最低支持版本不再为 macOS 12.0+**
|
||||
**🍎仅支持 macOS 13.0+**
|
||||
|
||||
> **如果你也喜欢 Adobe Downloader, 或者对你有帮助, 请 Star 仓库吧 🌟, 你的支持是我更新的动力**
|
||||
>
|
||||
@@ -57,14 +58,15 @@
|
||||
|
||||
- 更多关于 App 的更新日志,请查看 [Update Log](update-log.md)
|
||||
|
||||
- 2025-04-23 更新日志
|
||||
- 2025-07-20 更新日志
|
||||
|
||||
```markdown
|
||||
1. 修复了 Intel 机型下依赖包判断遇到 osx10 被误判为 arm 导致下载错误的问题
|
||||
2. 修复了设置界面上方的文字显示问题
|
||||
3. 调整下载管理界面的高度: 500 -> 600
|
||||
4. 新增下载任务复制所有产品和包列表信息
|
||||
5. 优化产品 Substance Alchemist 的显示问题
|
||||
1. 新增安装前终止 Setup 的特性
|
||||
2. 新增并发下载数控制
|
||||
3. 重写版本选择界面,采用 NavigationStack 的特性支持版本选择和自定义包选择
|
||||
4. 重写下载逻辑,支持线程池 + 分片的单任务多个包同时下载
|
||||
5. 重写 Helper 逻辑,使用 macOS 13.0+ 的 SMAppService 新特性
|
||||
6. 调整 Helper 链接状态的呼吸灯表现
|
||||
```
|
||||
|
||||
### 语言支持
|
||||
|
||||
@@ -1,5 +1,26 @@
|
||||
# Change Log
|
||||
|
||||
## 2025-07-20 更新日志
|
||||
|
||||
[//]: # (2.1)
|
||||
```markdown
|
||||
1. 新增安装前终止 Setup 的特性
|
||||
2. 新增并发下载数控制
|
||||
3. 重写版本选择界面,采用 NavigationStack 的特性支持版本选择和自定义包选择
|
||||
4. 重写下载逻辑,支持线程池 + 分片的单任务多个包同时下载
|
||||
5. 重写 Helper 逻辑,使用 macOS 13.0+ 的 SMAppService 新特性
|
||||
6. 调整 Helper 链接状态的呼吸灯表现
|
||||
|
||||
====================
|
||||
|
||||
1. Added feature to cancel Setup before installation.
|
||||
2. Added concurrency control for downloads.
|
||||
3. Rewritten version selection interface using NavigationStack with package customization.
|
||||
4. Rewritten download logic with thread pooling + segmented downloading for parallel package fetching.
|
||||
5. Rewritten Helper logic using SMAppService \(macOS 13.0+\).
|
||||
6. Refined breathing light indicator for Helper connection status.
|
||||
```
|
||||
|
||||
## 2025-04-23 更新日志
|
||||
|
||||
[//]: # (2.0.2)
|
||||
|
||||
Reference in New Issue
Block a user