object-c - iOS측 Alipay와 통합된 모바일 웹사이트 결제가 APP 결제로 전환되어 H5를 활성화할 수 없습니다.
迷茫
迷茫 2017-05-02 09:37:04
0
0
789

최근 모바일 결제 기능을 구현하기 위해 Alipay SDK와 연결했습니다. 공식 홈페이지에서 최신 DEMO를 다운로드하고 파라미터를 설정하면 정상적으로 실행됩니다. 그런 다음 튜토리얼을 단계별로 따라가며 주의해야 할 모든 사항에 주의를 기울이고 컴파일하면 됩니다. 휴대폰에 Alipay 클라이언트가 설치되어 있으므로 Appdelegate에서 동기화 결과를 얻어야 합니다. 코드는 다음과 같습니다(Swift):

func 애플리케이션(애플리케이션: UIApplication, openURL url: NSURL, sourceApplication: String?, 주석: AnyObject) -> 으아아아

}

// 참고: 새로운 API 인터페이스는 9.0 이후에 사용됩니다.

func application(app: UIApplication, openURL url: NSURL, options: [String : AnyObject]) -> 으아아아
}

실제 컴퓨터에서 실행한 후 성공적인 결제를 위해 Alipay로 점프한 후 자신의 앱으로 다시 점프하면 콘솔에서 동기화 결과(상태는 9000, 결제 성공)를 인쇄할 수 있지만 프로그램이 직접 충돌하고 중지됩니다. AlipaySDK.defaultService().processOrderWithPaymentResult 메서드에서 콘솔에 (lldb)가 표시됩니다.


그런 다음 AlipaySDK.defaultService().processOrderWithPaymentResult 메서드를 차단하려고 시도했는데 충돌 없이 정상적으로 실행되었습니다. 다른 실제 기기에서 테스트해봤습니다. 이 실제 기기에는 Alipay 클라이언트가 설치되어 있지 않기 때문에 H5에서 결제를 완료하면

에 표시됩니다.

AlipaySDK.defaultService().payUrlOrder(orderString as String, fromScheme: appScheme, callback: { (resultDic) in

으아아아

메서드에서 동기화 결과를 얻었으나 이번에는 콘솔이 동기화 결과를 출력하지 않고 바로 크래시가 발생합니다.

동기화 결과를 얻기 위해 메서드를 호출하자마자 충돌이 발생한다는 의미입니다. 어쩔 수 없이 테스트용으로 새로운 Swift 프로젝트를 생성하고 동일한 방식으로 Alipay SDK를 통합하여 동일한 코드를 사용했는데 정상적으로 실행되었으며 전혀 크래시가 발생하지 않은 것으로 나타났습니다! 다른 타사 라이브러리와 충돌이 있는지 궁금합니다. 이전에 두 타사 라이브러리 간에 충돌이 발생한 적이 있습니다. 이는 일반적으로 재정의 문제이며 컴파일이 통과되지 않습니다.


이 문제가 무엇인지 정말 알 수 없습니다. 혹시 이전에 이 문제를 겪으신 분이 있는지 묻고 싶습니다. 감사합니다!

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

모든 응답(0)
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿