iOS调用银联安全助手控件支付
1.文件導入,根據(jù)文檔,導入3個文件:UPPayPlugin.h、UPPayPluginDelegate.h、libUPPayPlugin.a(純無卡交易類型 ,如果是另一個類型則選Pro)
2.導入UPPayPlugin.h 需要引用QuartzCore.framework、Security.framework兩個框架,自己測試的Demo中沒有導入也可以運行,iOS8.3,Xcode6.3(Pro類型需要導入其他框架,具體參照銀聯(lián)文檔)
3.調用接口+?(BOOL)startPay:(NSString*)tn? mode:(NSString*)mode viewController:(UIViewController*)viewController delegate:(id<UPPayPluginDelegate>)delegate
測試環(huán)境:mode = @"01",真實環(huán)境:mode = @"00"
4.controller遵守UPPayPluginDelegate協(xié)議實現(xiàn)回調方法? -(void)UPPayPluginResult:(NSString*)result
報錯解決:
1.將 xcode 工程中 Build Setting下,C++ Language Dialect 和 C++ Standard Library 屬性值修改為 Compiler Default
2.將涉及到引用 UPPayPlugin.h 的源文件的后綴名都改為.mm
3.參照demo,檢查工程設置 Search Paths 里的 Framework Search Paths、Header Search Paths、Library Search Paths 的路徑設置,看設置路徑是否正確
4. 添加 QuartzCore.framework、AudioToolbox.framework, CoreAudio.framework、MediaPlayer.framework, AVFoundation.framework 和 Security.framework
5.工程的 Build Settings 中找到 Other Linker Flags 中添加-ObjC 宏;??
個人測試的Demo 只要做1、2、5三點即可正常運行程序,如果程序一直
另,此空間彈出的視圖只支持豎屏,如果應用是橫屏的應用,應該添加對豎屏的支持。
文檔中常見問題列表:
1? 編譯錯誤解決
UPPayDemo工程在編譯的過程中可能會出現(xiàn)Undefined symbols forarchitecture armv6/armv7/i386的編譯錯誤。如果出現(xiàn)這樣的錯誤,有以下幾種解決辦法:
1)由于支付控件使用到了C、C++和OC混編的情況,所以商戶工程引入UPPayPlugin.h頭文件以后可能會出現(xiàn)鏈接錯誤。這個時候可以通過兩種方式解決:
① 將涉及到引用UPPayPlugin.h的源文件的后綴名都改為.mm;
② 如果商戶不想修改源文件的后綴名,可以在工程中添加一個空的繼承自NSObject的類,并將文件.m后綴名該改為.mm即可。方法為new file->Objective-C class->類名自取->保存->修改后綴名為.mm。
③ 將工程的compilesource as 選項的值不是Objective–C++;
2)由于在UPPayDemo工程中添加了自定義的庫文件libUPPayPlugin.a,當編譯Demo工程時,應該檢查工程設置Search Paths里的Framework Search Paths、Header Search Paths、Library Search Paths的路徑設置,看設置路徑是否正確,另外還要注意里邊是否多余一些不確定的路徑
測試用卡號(招商銀行預付費卡:卡號:6226 4401 2345 6785密碼:111101),手機驗證碼123456
別人的總結:http://www.cocoachina.com/ios/20150724/12739.html
總結
以上是生活随笔為你收集整理的iOS调用银联安全助手控件支付的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python 正则表达式 compile
- 下一篇: 渝粤题库 陕西师范大学《西方文论》作业