我剛剛在Tim's tutorial上重新完成了約100次試驗。最後我做了它的工作。雖然我第一次嘗試時發誓它有效。 在我的情況是,當我將「登錄啓動」切換到「開啓」時,我只能在登錄後看到啓動的幫助程序只有一秒鐘。然後它消失了。 手動啓動應用程序,我看到開關已關閉。
這裏是我發現:
- 我的包標識已經在
NSArray *running = [[NSWorkspace sharedWorkspace] runningApplications]
- 列表中
NSRunningApplication *app (bundle name equal to my app)
的狀態是: [app isActive] == NO
,[app isHidden] == NO
,[app isTerminated] = NO
所以我對代碼做了一些修改,例如:
BOOL alreadyRunning = NO;
BOOL isActive = NO; // my modification
NSArray *running = [[NSWorkspace sharedWorkspace] runningApplications];
for (NSRunningApplication *app in running) {
if ([[app bundleIdentifier] isEqualToString:@"com.mybundleidentifier"]) {
alreadyRunning = YES;
isActive = [app isActive]; // my modification
}
}
if (!alreadyRunning || !isActive) { // my modification
....
您使用Apple事件嗎? –
其實我是這樣做的,但爲什麼它很重要? – Tibidabo
您能否提供更多關於使用本教程不起作用的信息?例如,是否還存在沙箱限制被執行或存在其他錯誤消息? –