
golang修改Mac桌面壁纸
作者: boyyang
分类: 后端开发
发布: 2024-07-14 07:57:01
更新: 2025-03-23 12:11:22
浏览: 236
修改Mac桌面壁纸可以使用AppleScript来修改,但是如果需要在软件中使用,那么可能在上架便会遇到各种问题,最好的解决方法便是直接调用原生API。
使用第三方库darwinkit:
package utils
import (
"errors"
"github.com/progrium/darwinkit/macos/appkit"
"github.com/progrium/darwinkit/macos/foundation"
"github.com/progrium/darwinkit/objc"
)
func SetDesktop(path string) error {
workspaceShared := appkit.Workspace_SharedWorkspace()
url := foundation.URL_FileURLWithPath(path)
mainScreen := appkit.Screen_MainScreen()
if ok := workspaceShared.SetDesktopImageURLForScreenOptionsError(
url,
mainScreen,
map[appkit.WorkspaceDesktopImageOptionKey]objc.IObject{},
nil,
); !ok {
return errors.New("failed to set desktop image")
}
return nil
}