手动加支付宝遇到的错误--iOS

前言

之前调通了支付宝demo,开始往自己工程拖东西吧,我为什么觉得我可能把所以的问题都遇到了呢+_+,赶紧把问题记录下来 不然下次弄还费劲,加一句,要不真的用ping++吧 😢

正文:

1.先把demo中的工程直接拷过来

2.添加相应的依赖库.选择"target"->"Link Binary With Libraries"

 

技术分享

3.编译  开始报错了吧 哇咔咔  

unknown type name 'NSString'

技术分享

 

解决:在相应文件中,导入

#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>

4."openssl/asn1.h"file not fount

技术分享还有这个

这个找不到 

 

解决:出现类似找不到文件的情况,Targets->Build Settings->Header Search Path添加路径.

直接将项目中的相应文件拖入即可.也可以$(SRCROOT)/文件路径.

至此,基本的工作完成.下面开始集成代码

 

 

$(PROJECT_DIR)/文件夹名         (这里说一下,直接点击openssl,然后showinfinder,然后command + i  查看路径,把得到路径的工程名字以后的部分加在文件夹名这OK了)

 

 

5.

Re:no matching function for call to 'PEM_read_bio_RSAPrivateKey'

 

改为

rsa_private = PEM_read_bio_RSAPrivateKey(bio_private, NULL, NULL, NULL);

6.

 No matching function for call to"EVP_EncodeBlock"

 int outputLength = EVP_EncodeBlock(outputBuffer, [signature bytes], signatureLength);

改为

 int outputLength = EVP_EncodeBlock(outputBuffer, (unsigned char *)[signature bytes], signatureLeng

7. 

技术分享

这种问题 就把demo里的这两个工程

技术分享

8.

Undefined symbols for architecture armv7:

  "_kSecReturnData", referenced from:

      -[APKKeychainBindingsController stringForKey:] in AlipaySDK

  "_kSecAttrAccount", referenced from:

      -[APKKeychainBindingsController stringForKey:] in AlipaySDK

      -[APKKeychainBindingsController storeString:forKey:accessibleAttribute:] in AlipaySDK

  "_kSecAttrAccessibleWhenUnlocked", referenced from:

      -[APKKeychainBindingsController storeString:forKey:] in AlipaySDK

  "_kSecClass", referenced from:

      -[APKKeychainBindingsController stringForKey:] in AlipaySDK

      -[APKKeychainBindingsController storeString:forKey:accessibleAttribute:] in AlipaySDK

  "_SecItemCopyMatching", referenced from:

      -[APKKeychainBindingsController stringForKey:] in AlipaySDK

  "_kSecClassGenericPassword", referenced from:

      -[APKKeychainBindingsController stringForKey:] in AlipaySDK

      -[APKKeychainBindingsController storeString:forKey:accessibleAttribute:] in AlipaySDK

  "_kSecAttrService", referenced from:

      -[APKKeychainBindingsController stringForKey:] in AlipaySDK

      -[APKKeychainBindingsController storeString:forKey:accessibleAttribute:] in AlipaySDK

  "_SecTrustGetCertificateCount", referenced from:

      -[APURLConnectionOperation connection:willSendRequestForAuthenticationChallenge:] in AlipaySDK

  "_SecTrustGetCertificateAtIndex", referenced from:

      -[APURLConnectionOperation connection:willSendRequestForAuthenticationChallenge:] in AlipaySDK

  "_kSecValueData", referenced from:

      -[APKKeychainBindingsController storeString:forKey:accessibleAttribute:] in AlipaySDK

  "_SecCertificateCopyData", referenced from:

      -[APURLConnectionOperation connection:willSendRequestForAuthenticationChallenge:] in AlipaySDK

  "_SecItemUpdate", referenced from:

      -[APKKeychainBindingsController storeString:forKey:accessibleAttribute:] in AlipaySDK

  "_SecCertificateCreateWithData", referenced from:

      ___44+[APURLConnectionOperation pinnedPublicKeys]_block_invoke in AlipaySDK

  "_SecTrustCopyPublicKey", referenced from:

      ___44+[APURLConnectionOperation pinnedPublicKeys]_block_invoke in AlipaySDK

      -[APURLConnectionOperation connection:willSendRequestForAuthenticationChallenge:] in AlipaySDK

  "_SecPolicyCreateBasicX509", referenced from:

      ___44+[APURLConnectionOperation pinnedPublicKeys]_block_invoke in AlipaySDK

      -[APURLConnectionOperation connection:willSendRequestForAuthenticationChallenge:] in AlipaySDK

  "_kSecAttrAccessibleWhenUnlockedThisDeviceOnly", referenced from:

      -[APKKeychainBindingsController setValue:forKeyPath:] in AlipaySDK

  "_SecItemAdd", referenced from:

      -[APKKeychainBindingsController storeString:forKey:accessibleAttribute:] in AlipaySDK

  "_SecItemDelete", referenced from:

      -[APKKeychainBindingsController storeString:forKey:accessibleAttribute:] in AlipaySDK

  "_SecTrustCreateWithCertificates", referenced from:

      ___44+[APURLConnectionOperation pinnedPublicKeys]_block_invoke in AlipaySDK

      -[APURLConnectionOperation connection:willSendRequestForAuthenticationChallenge:] in AlipaySDK

  "_kSecAttrAccessible", referenced from:

      -[APKKeychainBindingsController storeString:forKey:accessibleAttribute:] in AlipaySDK

  "_SecTrustEvaluate", referenced from:

      ___44+[APURLConnectionOperation pinnedPublicKeys]_block_invoke in AlipaySDK

      -[APURLConnectionOperation connection:willSendRequestForAuthenticationChallenge:] in AlipaySDK

这种错误  就是没有添加Security.framework的报错

 

好累有木有,希望对大家有帮助 😢

 

 

参考:

http://www.mamicode.com/info-detail-1189415.html

posted @ 2016-03-17 10:57  喵喵yy  阅读(500)  评论(0编辑  收藏  举报