我正在尝试在Finder侧栏中添加指向文件夹的链接。它适用于其他所有操作系统,但是当我尝试在Mac OS X 10.7或Mac OS X 10.8中将此图标添加到此项目时,没有任何反应。但是,在10.6中,我的代码效果很好。
CFURLRef url = (CFURLRef)[NSURL fileURLWithPath:self.syncFolderPath];
IconRef iconRef;
FSRef fref;
CFURLRef iconURLRef = (CFURLRef)[NSURL fileURLWithPath:@"/pathTo/icon.icns"];
CFURLGetFSRef(iconURLRef, &fref);
RegisterIconRefFromFSRef('SSBL', 'ssic', &fref, &iconRef);
// Create a reference to the shared file list.
LSSharedFileListRef favoriteItems = LSSharedFileListCreate(NULL, kLSSharedFileListFavoriteItems, NULL);
if (favoriteItems) {
LSSharedFileListItemRef item = LSSharedFileListInsertItemURL(favoriteItems, kLSSharedFileListItemBeforeFirst, NULL, iconRef, url, NULL, NULL);
if (item){
CFRelease(item);
}
}
CFRelease(favoriteItems);
有人可以给我建议吗?我的代码出了什么问题?