Get all the data from the Google Authenticator export data link otpauth-migration://offline?data=
in one line in Swift.
You can use Swift Package Manager and specify dependency in Package.swift
by adding this:
dependencies: [
.package(url: "https://github.com/svyatoynick/GAuthSwiftParser.git", .upToNextMajor(from: "1.0.0"))
]
To install through CocoaPods, simply add the following line to your Podfile:
pod 'GAuthSwiftParser'
Then run pod install
in the project directory to install.
Before you start, you need to get the link from the QR code to export Google Authenticator data in format: otpauth-migration://offline?data=YourData
After that we get the data from this link through the getAccounts(code: String)
function:
// This is an example code, replace it with your own
let code = "otpauth-migration://offline?data=CiAKCkhlbGxvQp6tvu8SBEFsZXgaBkFtYXpvbiABKAEwAgogCgocIRIITUedUv2HEgRNYXJ5GgZHb29nbGUgASgBMAIKHwoKGekSCE1H3VL9hxIFRGFyeWEaBExvdmUgASgBMAIQARgBIAA%3D"
let data = GAuthSwiftParser.getAccounts(code: code)
After that you can work with data
, an array of the class AccountModel
that contains 3 parameters: name
, issuer
andsecret
. Also available is the getLink()
function, through which you can get an OTP link from the received data.
GAuthSwiftParser is available under the MIT license. See the LICENSE file for more info.
GAuthSwiftParser depends on the following open-source projects:
- SwiftProtobuf by Apple (License)
- SwiftOTP by Lachlan Bell (License)