SecCopyErrorMessageString gives "Use of unresolved identifier" in swift
Asked Answered
V

3

4

Trying to use SecCopyErrorMessageString to interpret errorCode. in swift :

    var result: OSStatus
    result = SecItemAdd(query as CFDictionary, nil);


    if result != errSecSuccess {
    let errorDescription = SecCopyErrorMessageString(result,nil)
   //     NSLog("Keychain Error: %@", errorDescription)

The error of "Unresolved identifier" starts from "SecCopyError..."

Vaucluse answered 2/12, 2015 at 21:10 Comment(2)
Please be more specific about where exactly the error occurs – what identifier is unresolved? Also, if you can post a little more context for your sample code – so we can see where result comes from, for example – that will help us answer.Nablus
Just more lines above. Is that function working well in xcode 7? Seems that a function not working at all for me in swift.Vaucluse
N
9

The SecCopyErrorMessageString function only became available on iOS in version 11.3. Prior to that, it could only be used on OS X.

Nablus answered 3/12, 2015 at 16:53 Comment(0)
M
2

The above answer is a bit outdated, according to Apple, iOS 11.3, tvOS 11.3 and watchOS 4.3 started to support this since the beta version of SDK.

You'd need to compile against those supported SDKs to use that function. Otherwise, only macOS support that for now.

Mopes answered 2/2, 2018 at 3:21 Comment(0)
P
0

It may not be obvious: This API is part of the Security framework. You need to add the framework to your project target's Build Phases > Link Binary With Libraries.

Perilous answered 25/7, 2019 at 7:44 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.