ios - 适用于 iOS 的 Google 身份验证器丢失文件

标签 ios google-authenticator

我已经从 here 克隆了 Google 身份验证器源代码.在 Xcode 中打开 iOS 项目后,我发现缺少了很多文件,因此在尝试构建时导致了数百个编译错误。只是一些丢失的文件是:

GTMNSDictionary+URLArguments.h
GTMNSString+URLArguments.h
GTMLocalizedString.h
GTMRegex.h

有没有人能够为 Google Authenticator 构建 iOS 项目?

更新(2015 年 6 月 29 日)

我找到了丢失的 ZXing 文件 here以及缺少的适用于 Mac 的 Google 工具箱文件 here .然后,我在 OTPAuthURLEntryController.m 中的这一行遇到了构建错误:

@property (nonatomic, retain) __attribute__((NSObject)) dispatch_queue_t queue;

我通过将行更改为来修复它:

@property (nonatomic, retain) dispatch_queue_t queue;

现在我正在尝试解决以下“未找到符号”问题:

Undefined symbols for architecture x86_64:
  "_OBJC_CLASS_$_Decoder", referenced from:
      objc-class-ref in OTPAuthURLEntryController.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

我已经搜索了所有 SO,但仍未弄清楚。任何帮助将不胜感激!

最佳答案

我找到了丢失的 ZXing 文件 here以及缺少的适用于 Mac 的 Google 工具箱文件 here .然后我将适当的缺失文件添加到项目中。在此之后,我在 OTPAuthURLEntryController.m 中的这一行遇到了构建错误:

@property (nonatomic, retain) __attribute__((NSObject)) dispatch_queue_t queue;

我通过将行更改为来修复它:

@property (nonatomic, retain) dispatch_queue_t queue;

在那之后,我遇到了以下“未找到符号”错误消息:

Undefined symbols for architecture x86_64:
  "_OBJC_CLASS_$_Decoder", referenced from:
      objc-class-ref in OTPAuthURLEntryController.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

事实证明,主项目 (OTPAuth) 正在链接到名为 libZXingWidget.a 的库,该库已丢失(与许多其他内容一样)。我在丢失的 ZXing 文件中打开了 ZXingWidget 项目,并通过删除将警告视为错误的自定义标志来修复构建错误。然后,我构建了静态库并将构建目标设置为 iOS 设备。这生成了我需要的 libZXingWidget.a 文件。我在主项目 (OTPAuth) 的构建阶段链接了该文件,现在 Google Authenticator 在 iPhone 6 模拟器上运行!

关于ios - 适用于 iOS 的 Google 身份验证器丢失文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31080758/

相关文章:

java.security.NoSuchProviderException : no such provider: SUN

c# - OtpSharp 无法与 google 身份验证器配合使用

ios - 无效的条形码 - Google Authenticator - iOS - 用 = 填充

iOS:shouldChangeCharactersInRange 返回旧结果

ios - 快速替换 'Class'

iOS9 UIWebView 黑屏

perl - Perl 中的 Google 身份验证器实现

ios - 两个 CGRect 比较的百分比

ios - 如何将带有应用程序组的应用程序上传到苹果商店?

ssh - 启用 SSH 两因素身份验证,但仅适用于 root 用户