gpt4 book ai didi

macos - 如何在沙盒应用程序中添加调度?

转载 作者:行者123 更新时间:2023-12-03 16:09:44 24 4
gpt4 key购买 nike

我需要向我的应用程序添加日程安排。这样我的应用程序就会在指定的时间和日期自动启动。我是通过引用Scheduling Timed Jobs来做到的。我已将用于调度的 plist 文件放置在 /Users/username/Library/LaunchAgents 中。它在非沙盒应用程序中运行良好,但在沙盒应用程序中不起作用。我无法将调度文件添加到路径 /Users/username/Library/LaunchAgents。它给了我错误

Error Domain=NSCocoaErrorDomain Code=513 "“com.sample.schedule.plist” couldn’t be copied because you don’t have permission to access “LaunchAgents”." UserInfo=0x100114f10 {NSSourceFilePathErrorKey=/Users/username/Library/Developer/Xcode/DerivedData/SchedulingInSandbox-cernhnigkuqhehbndryxlekpiiiu/Build/Products/Debug/SchedulingInSandbox.app/Contents/Resources/com.sample.schedule.plist, NSUserStringVariant=(
Copy
), NSDestinationFilePath=/Users/username/Library/LaunchAgents/com.sample.schedule.plist, NSFilePath=/Users/username/Library/Developer/Xcode/DerivedData/SchedulingInSandbox-cernhnigkuqhehbndryxlekpiiiu/Build/Products/Debug/SchedulingInSandbox.app/Contents/Resources/com.sample.schedule.plist, NSUnderlyingError=0x1001132d0 "The operation couldn’t be completed. Operation not permitted"}

我也在权利中添加了 LaunchAgents 路径。

<key>com.apple.security.temporary-exception.files.home-relative-path.read-write</key>
<array>
<string>/Library/LaunchAgents/</string>
</array>

但我仍然无法在 LaunchAgents 目录中添加调度 plist。无论我做得正确还是有其他方法在沙盒应用程序中进行调度。

编辑1:
如果我在 /Library/Containers/LaunchAgents 中手动创建文件夹并将 plist 放在那里,我会收到此错误:

Could not open job overrides database at: /private/var/db/launchd.db/com.apple.launchd.peruser.501/overrides.plist: 1: Operation not permitted
launch_msg(): Socket is not connected

最佳答案

尝试将您的工作列表放入

/Users/<username>/Library/Containers/<my app identifier>/Data/Library/LaunchAgents/<my app identifier>.<somename>.plist

这将是您的沙盒应用程序的数据容器。

在我的 Mac 上查看,我发现 FaceTime 有两个计划的作业 plist,您可以将其用作示例。

关于macos - 如何在沙盒应用程序中添加调度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16666813/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com