JS 와 APP 의 상호작용 - H5 가 네 이 티 브 APP 를 호출 하 는 방법
최근 에 한 H5 프로젝트 는 앱 에 삽입 해서 사용 해 야 합 니 다. 이것 은 js 와 app 의 상호작용 과 관련 된 문제 입 니 다. 저 는 앱 에 값 을 전달 해 야 합 니 다. 다음은 제 가 프로젝트 를 하 는 과정 에서 값 을 전달 하 는 방법 입 니 다. 참고 하 시기 바 랍 니 다.
해결 방법
AppData 라 는 JSON 대상 은 우리 가 백 엔 드 에 전달 해 야 할 모든 값 이 며, 터미널 장 치 를 판단 해 야 합 니 다. IOS 터미널 에는 window. webkit. message Handlers, delivery ClueID 를 추가 해 야 합 니 다. 이것 은 네 이 티 브 방법 명 입 니 다.
var AppData = Object.assign(
{
loanID:this.loanId},
{
orderState:this.orderState}
);
var u = navigator.userAgent,
app = navigator.appVersion;
//android uc
var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Linux') > -1;
//ios
var isiOS = !!u.match(/(i[^;]+;( U;)? CPU.+Mac OS X)/);
if(isiOS){
window.webkit.messageHandlers.deliveryClueID.postMessage(AppData);
}else if(isAndroid){
android.deliveryClueID(JSON.stringify(AppData));
}
아니면 그 럴 수 있어?이것 은 인터넷 에서 다른 사람의 방법 으로 JS 가 안 드 로 이 드 원생 을 호출 하 는 것 이다.
//
JavaScript:android. (params);
//
window.android. (params);
그리고 APP 엔 드 는 다음 과 같은 설정 을 해 야 합 니 다.이것 은
IOS
설정 과 호출 방법 입 니 다. delivery ClueID 는 원생 방법 명 입 니 다. IOS 를 하 는 큰 사람 이 알 아야 합 니 다.let conf = WKWebViewConfiguration()
conf.userContentController = WKUserContentController()
conf.preferences.javaScriptEnabled = true
conf.selectionGranularity = WKSelectionGranularity.character
/// h5 swift
conf.userContentController.add(self, name: deliveryClueID)
webView = WKWebView( frame: CGRect(x:0, y:KHeight_NavBar,width:kScreenWidth, height:kScreenHeight - KHeight_NavBar),configuration:conf)
안 드 로 이 드 가 어떻게 설정 하 는 지 모 르 겠 어 요 emmm...내 가 알 게 되면 더 하 자!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
[2022.04.19] 자바스크립트 this - 생성자 함수와 이벤트리스너에서의 this18일에 this에 대해 공부하면서 적었던 일반적인 함수나 객체에서의 this가 아닌 오늘은 이벤트리스너와 생성자 함수 안에서의 this를 살펴보기로 했다. new 키워드를 붙여 함수를 생성자로 사용할 때 this는...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.