와 상호 작용하는 H5 응용 프로그램

이제 종종 같은 jssdk 마이크로 편지로 네이티브 응용 프로그램, 통신 (에서 웹뷰에서 실행)와 상호 작용 window.wx 객체에 의해 일부 네이티브 응용 프로그램 기능을 호출해야합니다, 사이드 웹 응용 프로그램을 이동합니다. 그래서, 뇌졸중이 시간 네이티브 응용 프로그램의 상호 작용의 원리와 스트로크 H5.

네이티브 응용 프로그램과 상호 작용 H5는 본질적으로 두 호출입니다 :

 

  • 응용 프로그램 호출 코드 H5

  • H5 호출 응용 프로그램 코드

 

1. 응용 프로그램 호출 코드 H5

앱이 호스트이기 때문에, 당신이 직접이 H5 액세스 할 수 있으므로이 호출이 비교적 간단, (방법 포함) 전역 개체의 숫자에 노출 후 H5 네이티브 응용 프로그램에서 이러한 개체를 호출합니다.

자바 스크립트 :

29ef7c2ed10a44fc8af17358529e4384.png

기계적 인조 인간:

7865751cdf2840d49d6d9e853af67c8d.png

IOS :

bed824d0d0de4710b19465e1f672367c.png

응용 프로그램 코드를 호출 2. H5

H5 직접 호스트 응용 프로그램에 액세스 할 수 있기 때문에, 그래서이 호출은 상대적으로 조금 복잡하다.

이것은 일반적으로 두 가지 방법으로 호출 :

 

  • JS 객체는 응용 프로그램에 의해 글로벌 H5를 주입 한 다음 H5에서 직접 개체에 액세스하는 것입니다

  • 사용자 지정 요청을 시작하는 H5 계약, 앱이 요청을 차단 한 후, 다음 앱이 콜백 함수 H5를 호출

 

2.1 응용 프로그램의 주입은 글로벌 H5에 따라 JS

이러한 방법으로 통신 메커니즘은 비교적 이해하기 쉽고, 간단하고, H5, 그것은 더 권장되는 방법입니다, 새로운 것은 없다. 그러나이 방법은 보안 위험이 될 수있다, 당신은 안드로이드 웹보기의 취약점을 이용하여 상세보기에서 알 수 없습니다.

 

기계적 인조 인간:

74a43fa8da294b68800f99728cc718aa.png

IOS :

e61c92ec8352486abb0197624c528e0e.png

자바 스크립트 :

40ec359e253b4140b0234c12d26cdfb1.png

사용자 정의 프로토콜에 대한 요청에 의해 시작 2.2 H5

때문에 프런트 엔드 많은 개발자를위한 비교적 새로운 일이 프로토콜을 정의 할 필요가 조금 더 복잡한 이런 식으로. 그것은 일반적으로 이러한 방법으로 권장하지 않습니다, 그것은 첫 번째 방법을 보완 할 수 있습니다.

일반적으로 다음과 같은 단계가 필요합니다 :

 

  • 같은 SDK 같은 응용 프로그램 사용자 정의 프로토콜 : // 액션 PARAMS?

  • H5 이러한 window.bridge으로 콜백 함수를 정의 = {getDouble 여기서 value => {} getTriple 여기서 value => {}}

  • 사용자 정의 프로토콜에 대한 요청에 의해 시작 H5, 등 같이 location.href = 'SDK :? // double 값 = 10'

  • 앱 차단이 요청되면, 해당 동작은, 반환 값을 취득

  • 이러한 window.bridge.getDouble 같은 콜백 함수가 호출 애플리케이션 H5 (20);

 

자바 스크립트 :

0204c45cfb1b428cb2f62029a4e636d0.png

기계적 인조 인간:

882674db65aa44e3888f09cf37126527.png

IOS :

32883b3aa5694dceafb9c7bc345fe7c8.png

 

추천

출처www.cnblogs.com/yayaxuping/p/10958771.html