android webview 에서 js 를 호출 했 을 때 주의사항 을 헷 갈 렸 습 니 다.
1327 단어 JavaScriptandroidwebView뒤섞이다
그리고 해결 방안 을 찾 습 니 다. proguard - project 파일 에 있 습 니 다.
<span style="font-family:KaiTi_GB2312;font-size:14px;"># If your project uses WebView with JS, uncomment the following
# and specify the fully qualified class name to the JavaScript interface
# class:
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
# public *;
#}</span>
주석 을 풀다
fqcn. of. javascript. interface. for. webview 는 자신 이 정의 하 는 클래스 로 바 뀌 어야 합 니 다. (패키지 이름 도 있어 야 합 니 다. 내부 클래스 로 정의 된다 면 cn. wj. ui. WebView Activity $my Interface) 4.1 시스템 에 서 는 문제 가 없 지만 4.2 의 기계 에 서 는 안 됩 니 다. 다시 찾 아 보 세 요. 오,원래 4.2 이상 버 전에 서 js 인 터 페 이 스 를 호출 하려 면 성명 @ JavascriptInterface 를 사용 해 야 합 니 다. 그리고 헷 갈 릴 때 이 성명 을 잃 어 버 려 서 프로그램 이 js 를 호출 할 수 없습니다. 파일 에 조건 을 추가 해 야 합 니 다.
-keepattributes *Annotation* -keepattributes *JavascriptInterface*
따라서 웹 뷰 와 js 의 상호작용 을 사 용 했 을 때 혼동 파일 에 다음 설정 을 추가 해 야 합 니 다.
-keepclassmembers class cn.xx.xx.Activity$AppAndroid {
public *;
}
-keepattributes *Annotation*
-keepattributes *JavascriptInterface*
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
기초 정리 - 1문자 (String) 숫자 (Number) 불린 (Boolean) null undefined 심볼 (Symbol) 큰정수 (BigInt) 따옴표로 묶어 있어야 함 Not-A-Number - 숫자 데이터 / 숫자로 표...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.