JavascriptEngine
최근 업데이트 | 안정화 버전 | 출시 후보 버전 | 베타 버전 | 알파 버전 |
---|---|---|---|---|
2023년 11월 1일 | - | - | 1.0.0-beta01 | - |
종속 항목 선언
JavascriptEngine의 종속 항목을 추가하려면 프로젝트에 Google Maven 저장소를 추가해야 합니다. 자세한 내용은 Google Maven 저장소를 읽어보세요.
다음과 같이 앱 또는 모듈의 build.gradle
파일에 필요한 아티팩트의 종속 항목을 추가합니다.
Groovy
dependencies { implementation "androidx.javascriptengine:javascriptengine:1.0.0-beta01" }
Kotlin
dependencies { implementation("androidx.javascriptengine:javascriptengine:1.0.0-beta01") }
종속 항목에 관한 자세한 내용은 빌드 종속 항목 추가를 참고하세요.
의견
제출하신 의견은 Jetpack을 개선하는 데 도움이 됩니다. 새로운 문제를 발견하거나 라이브러리 개선을 위한 아이디어가 있다면 Google에 알려 주세요. 새 문제를 제출하기 전에 이 라이브러리의 기존 문제를 살펴보시기 바랍니다. 별표 버튼을 클릭하여 기존 문제에 투표할 수 있습니다.
자세한 내용은 Issue Tracker 문서를 참고하세요.
버전 1.0
버전 1.0.0-beta01
2023년 11월 1일
androidx.javascriptengine:javascriptengine:1.0.0-beta01
가 출시되었습니다. 버전 1.0.0-beta01에 포함된 커밋을 확인하세요.
1.0.0-alpha07
이후 변경사항 없음
버전 1.0.0-alpha07
2023년 10월 18일
androidx.javascriptengine:javascriptengine:1.0.0-alpha07
가 출시되었습니다. 버전 1.0.0-alpha07에 포함된 커밋을 확인하세요.
새로운 기능
- 새로운 API가 도입되어 앱이 콜백을 등록하여 격리된 비정상 종료를 처리할 수 있습니다.
API 변경사항
DEFAULT_MAX_HEAP_SIZE
의 이름을AUTOMATIC_MAX_HEAP_SIZE
로 바꿉니다. 추가했습니다. (I6d303)FileDescriptorIoException
의 이름을DataInputException
로 바꿉니다. 추가했습니다. (Iba4eb)DEFAULT_ISOLATE_HEAP_SIZE
의 이름을DEFAULT_MAX_HEAP_SIZE
로 바꿉니다. 추가했습니다. (Iaa16f)- 작동하지 않는 콘솔
getSource
및getTrace
메서드를 삭제합니다. 추가했습니다. (I4b7a2) FileDescriptorIoException
숨기기를 해제합니다. (Ic44e6)- 앱이 콜백을 등록하여 격리된 비정상 종료를 처리하도록 허용합니다. 추가했습니다. (Iad25f)
버전 1.0.0-alpha06
2023년 10월 4일
androidx.javascriptengine:javascriptengine:1.0.0-alpha06
가 출시되었습니다. 버전 1.0.0-alpha06에 포함된 커밋을 확인하세요.
새로운 기능
- 소스를 문자열로 변환하지 않고도
ParcelFileDescriptor/AssetFileDescriptor
에서 JavaScript를 평가할 수 있는 새로운 API가 도입되었습니다.JavaScriptIsolate
클래스가 스레드로부터 안전합니다.
API 변경사항
- false를 반환하는 대신 예외를 발생시키도록
provideNamedData
를 변경합니다. 추가했습니다. (I8909a) - Afds 및 Pfds를 통해 JavaScript를 평가하는 API를 추가합니다. (I03e3a)
MemoryLimitExceededException
및SandboxDeadException
서브클래스를IsolateTerminatedException
로 만듭니다. (Icf359)- 공개 API
evaluateJavaScriptAsync(@NonNull byte[] code)
를 삭제했습니다. (I4b3ac)
버그 수정
JavaScriptIsolate
스레드를 안전하게 만듭니다. 추가했습니다. (Ib28e0)
버전 1.0.0-alpha05
2023년 4월 5일
androidx.javascriptengine:javascriptengine:1.0.0-alpha05
가 출시되었습니다. 버전 1.0.0-alpha05에 포함된 커밋을 확인하세요.
API 변경사항
버전 1.0.0-alpha04
2023년 2월 22일
androidx.javascriptengine:javascriptengine:1.0.0-alpha04
가 출시되었습니다. 버전 1.0.0-alpha04에 포함된 커밋을 확인하세요.
버그 수정
- 샌드박스 처리된 프로세스가 종료될 때 드물게 발생하는
NullPointerException
문제를 수정했습니다.
버전 1.0.0-alpha03
2022년 12월 7일
androidx.javascriptengine:javascriptengine:1.0.0-alpha03
이 출시되었습니다. 버전 1.0.0-alpha03에 포함된 커밋을 확인하세요.
새로운 기능
- 메모리 부족 비정상 종료 발생 시 샌드박스 전체를 비정상 종료하는 대신 원인이 된 격리로 한정합니다. 격리에서 메모리가 부족하게 되면 추가 평가에 사용할 수 없습니다.
- 현행 방식에서는 격리가 보유한 리소스는 샌드박스가 종료될 때까지 해제되지 않습니다. 이와 같은 리소스 해제 동작은 이후 버전의 라이브러리에서 변경될 수 있습니다.
API 변경사항
- 평가 결과 격리에서 메모리가 부족하게 될 경우
MemoryLimitExceededException
이 발생합니다. (I336ca)
버전 1.0.0-alpha02
2022년 10월 5일
androidx.javascriptengine:javascriptengine:1.0.0-alpha02
가 출시되었습니다. 버전 1.0.0-alpha02에 포함된 커밋을 확인하세요.
새로운 기능
- 시스템에서 자바스크립트 샌드박스를 지원하는지 확인하기 위해
JavaScriptSandbox#isSupported
를 추가합니다.
API 변경사항
- 시스템 지원 부족으로
JavaScriptSandbox
를 만들 수 없는 경우SandboxUnsupportedException
이 발생합니다. (I0dcd6)
버전 1.0.0-alpha01
2022년 8월 10일
androidx.javascriptengine:javascriptengine:1.0.0-alpha01
가 출시되었습니다. 버전 1.0.0-alpha01에 포함된 커밋을 확인하세요.
새로운 기능
클라이언트가 안전하고 제한된 환경에서 자바스크립트를 평가할 수 있도록
JavaScriptSandbox
및JavaScriptIsolate
에 관한 실험용 지원을 추가했습니다. 현재 개발 중인 영역이므로 API는 사전 고지 없이 변경될 수 있습니다.JavascriptEngine 구성요소에 관한 기능 요청 및 버그를 제출해 주세요.