2

我有一个 pyobjc 应用程序,我用 py2app 打包。我还有一个复选框,用户可以使用它选择添加应用程序以在系统重新启动时启动。我正在使用 LaunchServices 执行此操作,但是,当应用程序被沙盒化时,这不起作用。我正在尝试使用 ServiceManagement 来实现这种行为。http://blog.timschroeder.net/2012/07/03/the-launch-at-login-sandbox-project/。由于我使用的是pyobjc,所以我不使用xcode。

我手动创建了帮助应用程序,对其进行签名并将其放置在 Contents\Library\LoginItems 中。当我调用 SMLoginItemSetEnabled('com.*****.HelperApp', True) 时,我看到帮助应用程序已启动。该文档说,现在每当用户登录时都会调用帮助应用程序。但是,这似乎没有发生。是否需要任何额外的步骤?每次重新启动系统或用户注销并重新登录时,帮助应用程序是否应该启动?

但是,我在控制台中看到了几个错误:

14/10/14 2:47:40.155 pm lsboxd[312]: Not allowing process 611 to launch "/Users/pradeep/desktop_documents/packaging/osx/build/dist/app_name.app/Contents/Library/LoginItems/Login_Helper.app" because the security assessment verdict was denied.
14/10/14 2:47:40.155 pm lsboxd[312]: Not allowing process 611 to register app "/Users/pradeep/desktop_documents/packaging/osx/build/dist/app_name.app/Contents/Library/LoginItems/Login_Helper.app" for launch.

当我尝试重新启动机器时,我注意到帮助应用程序没有重新启动。就在关闭之前,助手应用程序被杀死了。

4

0 回答 0