获取用户帐户图像
简单来说:如何获取用户的帐户图像?
我在 Mac 上使用 Cocoa。
Simply: how do I get the user's account image?
I'm using Cocoa on Mac.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
简单来说:如何获取用户的帐户图像?
我在 Mac 上使用 Cocoa。
Simply: how do I get the user's account image?
I'm using Cocoa on Mac.
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(3)
如果用户删除了 vcard,地址簿方法将不起作用。
我使用永不中断的 CBIdentity 方法,正如 Dave 所说:
为了使用 CBIdentity,您需要将 协作框架 添加到您的目标并使用以下 include 指令
The Address Book method doesn't work if the user deletes the vcard.
I use the CBIdentity method that never breaks, as Dave says:
In order to use CBIdentity you need to add the Collaboration Framework to your targets and use the following include directive
如果您只想要登录用户的图像,也可以使用 AddressBook 通过单行获取它:
但我相信这不能保证与登录相同在图像中。
If you only want an image for the logged-in user, it's also possible to get it with a one-liner using AddressBook:
but I believe that this is not guaranteed to be the same as the log-in image.
如果您可以获得代表相关用户的
CSIdentityRef
或CBIdentity*
句柄,则可以调用-[CBIdentity image]
检索其帐户图像的方法。编辑:
这是我之前的一个答案,展示了如何查询系统上的所有标准用户帐户并将它们转换为
CBIdentity
对象:获取 OS X 上的所有用户如果您不想链接到 Collaboration.framework,那么您可以使用类似
CSIdentityImageGetData
(或类似变体之一)直接获取图像。我个人发现使用原生 Cocoa 对象更好,但在这种情况下,这并不是绝对必要的。If you can get a handle to a
CSIdentityRef
or aCBIdentity*
that represents the user in question, then you can invoke the-[CBIdentity image]
method to retrieve their account image.Edit:
Here's a previous answer of mine that shows how to query for all standard user accounts on a system and convert them into
CBIdentity
objects: Get all Users on OS XIf you don't want to link against Collaboration.framework, then you can use something like
CSIdentityImageGetData
(or one of the similar variants) to get the image directly. I personally find working with a native Cocoa object to be nicer, but in this case it's not absolutely necessary.