前言
之前调通了支付宝demo,开始往自己工程拖东西吧,我为什么觉得我可能把所以的问题都遇到了呢+_+,赶紧把问题记录下来 不然下次弄还费劲,加一句,要不真的用ping++吧 ?
正文:
1.先把demo中的工程直接拷过来
2.添加相应的依赖库.选择"target"->"Link Binary With Libraries"
3.编译 开始报错了吧 哇咔咔
unknown type name 'NSString'
解决:在相应文件中,导入
#import
#import
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