공개 클래스 TaskJniUtils
작업 API용 JNI 유틸리티입니다.
중첩 클래스
상호 작용 | TaskJniUtils.EmptyHandleProvider | 빈 매개변수 목록에서 NativeHandle을 가져오는 구문 설탕입니다. | |
상호 작용 | TaskJniUtils.FdAndOptionsHandleProvider <T> | 파일 설명자 및 옵션에서 기본 핸들을 가져오는 구문 설탕입니다. | |
상호 작용 | TaskJniUtils.MultipleBuffersHandleProvider | ByteBuffer 배열에서 NativeHandle을 가져오는 구문 설탕입니다. |
상수
긴 | INVALID_POINTER |
공개 방법
정적 <T> 긴 | createHandleFromFdAndOptions (컨텍스트 컨텍스트, FdAndOptionsHandleProvider <T> 공급자, 문자열 libName, 문자열 filePath, T 옵션) JNI를 초기화하고 작업 API에 대한 파일 설명자와 옵션이 포함된 C++ 핸들을 반환합니다. |
정적 긴 | createHandleFromLibrary ( TaskJniUtils.EmptyHandleProvider 공급자, 문자열 libName) 먼저 C++ 라이브러리를 로드한 후 TaskJniUtils.EmptyHandleProvider.createHandle() 호출하여 JNI를 초기화하고 C++ 핸들을 반환합니다. |
정적 긴 | createHandleWithMultipleAssetFilesFromLibrary (컨텍스트 컨텍스트, TaskJniUtils.MultipleBuffersHandleProvider 공급자, 문자열 libName, 문자열... filePaths) 먼저 C++ 라이브러리를 로드하여 JNI를 초기화하고 C++ 핸들을 반환한 다음 TaskJniUtils.MultipleBuffersHandleProvider.createHandle(ByteBuffer) 호출합니다. |
정적 긴 | createProtoBaseOptionsHandle ( BaseOptions baseOptions) |
정적 긴 | createProtoBaseOptionsHandleWithLegacyNumThreads ( BaseOptions baseOptions, int LegacyNumThreads) |
정적 MappedByteBuffer | |
정적 공백 |
상속된 메서드
상수
공개 정적 최종 긴 INVALID_POINTER
상수값: 0
공개 방법
public static long createHandleFromFdAndOptions (컨텍스트 컨텍스트, FdAndOptionsHandleProvider <T> 공급자, 문자열 libName, 문자열 filePath, T 옵션)
JNI를 초기화하고 작업 API에 대한 파일 설명자와 옵션이 포함된 C++ 핸들을 반환합니다.
매개변수
문맥 | Android 앱 컨텍스트 |
---|---|
공급자 | 일반적으로 기본 호출에서 반환되는 C++ 핸들을 가져오는 공급자 |
lib이름 | 로드할 C++ lib의 이름 |
파일 경로 | 로드할 파일의 경로 |
옵션 | 공급자가 사용하는 작업 API를 설정하는 옵션 |
보고
- C++ 핸들이 길어짐
던지기
IO예외 | 모델 파일을 로드하지 못하는 경우. |
---|
공개 정적 긴 createHandleFromLibrary ( TaskJniUtils.EmptyHandleProvider 공급자, 문자열 libName)
먼저 C++ 라이브러리를 로드한 후 TaskJniUtils.EmptyHandleProvider.createHandle()
호출하여 JNI를 초기화하고 C++ 핸들을 반환합니다.
매개변수
공급자 | 일반적으로 기본 호출에서 반환되는 C++ 핸들을 가져오는 공급자 |
---|---|
lib이름 |
보고
- C++ 핸들이 길어짐
public static long createHandleWithMultipleAssetFilesFromLibrary (컨텍스트 컨텍스트, TaskJniUtils.MultipleBuffersHandleProvider 공급자, 문자열 libName, 문자열... filePaths)
먼저 C++ 라이브러리를 로드하여 JNI를 초기화하고 C++ 핸들을 반환한 다음 TaskJniUtils.MultipleBuffersHandleProvider.createHandle(ByteBuffer)
호출합니다.
매개변수
문맥 | 앱 컨텍스트 |
---|---|
공급자 | 일반적으로 기본 호출에서 반환되는 C++ 포인터를 가져오는 공급자 |
lib이름 | 로드할 C++ lib의 이름 |
파일 경로 | 로드할 파일 경로 |
보고
- C++ 포인터 길이
던지기
IO예외 | 모델 파일을 로드하지 못하는 경우. |
---|
공개 정적 긴 createProtoBaseOptionsHandleWithLegacyNumThreads ( BaseOptions baseOptions, int LegacyNumThreads)
매개변수
기본옵션 | |
---|---|
레거시 스레드 수 |
공개 정적 MappedByteBuffer loadMappedFile (컨텍스트 컨텍스트, 문자열 파일 경로)
메모리 매핑을 통해 자산 폴더에서 파일을 로드합니다.
매개변수
문맥 | 자산에 액세스하기 위한 애플리케이션 컨텍스트입니다. |
---|---|
파일 경로 | 파일의 자산 경로입니다. |
보고
- 로드된 메모리 매핑 파일.
던지기
IO예외 | 모델 파일을 로드하지 못하는 경우. |
---|