아래와 같이 TVApplicationControllerDelegate에서 evaluateAppJavaScriptIn 메소드를 사용하고 이에 해당하는 swift 메소드를 작성할 수 있습니다. (신속한 측면)
// MARK: TVApplicationControllerDelegate
func appController(_ appController: TVApplicationController, evaluateAppJavaScriptIn jsContext: JSContext){
let debug : @convention(block) (String!) -> Void = {
(string : String!) -> Void in
#if DEBUG
print("[log]: \(string!)\n")
#endif
}
jsContext.setObject(unsafeBitCast(debug, to: AnyObject.self), forKeyedSubscript: "debug" as (NSCopying & NSObjectProtocol)!)
}
그런 다음이 방법을 TVJS에서 이와 같이 호출 할 수 있습니다. (JS 측)
debug('Hello from js to swift...');
이 참조 : [A tvOS 응용 프로그램에서 모두 네이티브 및 TVML를 사용하는 방법?] (http://stackoverflow.com/questions/37765886/how-to-use-both-native- and-tvml-in-a-tvos-app). – OOPer