webApp의 경우 뷰 컨트롤러에 웹페이지를 렌더링하는 UIWebView.UIWebView가 있습니다.
이제 WeChat 결제를 하려면 js가 oc를 호출한 다음 WeChat APP을 호출한 다음 결제 성공 또는 취소 후 자신의 APP으로 돌아오면 oc js를 호출하여 결제 결과를 프런트 엔드에 전달하려고 합니다. .
그러나 이때 뷰 컨트롤러 아래의 모든 멤버 속성 값이 nil(NSLog로 인쇄됨)이고 webView도 nil인 것으로 확인되었습니다. [self.webView stringByEvaluatingJavaScriptFromString:@"pay()"]
당연히 이러한 호출에는 결과가 없습니다.
예를 들어 뷰 컨트롤러에는 url이라는 멤버 속성이 있습니다. WeChat App으로 이동하기 전에 먼저 값을 123으로 할당하고 self.url = @"123"
url의 값을 인쇄합니다. NSLog(@"%@",self.url)
이때 값은 123이면 WeChat 앱으로 점프한 다음 돌아와서 WeChat 결제 콜백 함수 NSLog(@"%@",self.url)
에서 현재 0인 URL 값을 인쇄합니다