TaskJniUtils

classe pubblica TaskJniUtils

Utilità JNI per l'API Task.

Classi nidificate

interfaccia TaskJniUtils.EmptyHandleProvider Sintassi sugar per ottenere nativeHandle dall'elenco dei parametri vuoto.
interfaccia TaskJniUtils.FdAndOptionsHandleProvider <T> Sintassi sugar per ottenere nativeHandle dal descrittore di file e dalle opzioni.
interfaccia TaskJniUtils.MultipleBuffersHandleProvider Sintassi sugar per ottenere nativeHandle da un array di ByteBuffer .

Costanti

lungo POINTER_INVALID

Metodi pubblici

<T> statico lungo
createHandleFromFdAndOptions (contesto contesto, provider FdAndOptionsHandleProvider <T>, stringa libName, stringa filePath, opzioni T)
Inizializza JNI e restituisce l'handle C++ con il descrittore di file e le opzioni per l'API dell'attività.
statico lungo
createHandleFromLibrary (provider TaskJniUtils.EmptyHandleProvider , String libName)
Inizializza JNI e restituisce l'handle C++ caricando prima la libreria C++ e quindi richiamando TaskJniUtils.EmptyHandleProvider.createHandle() .
statico lungo
createHandleWithMultipleAssetFilesFromLibrary (contesto di contesto, provider TaskJniUtils.MultipleBuffersHandleProvider , String libName, String... filePaths)
Inizializza JNI e restituisce l'handle C++ caricando prima la libreria C++ e quindi richiama TaskJniUtils.MultipleBuffersHandleProvider.createHandle(ByteBuffer) .
statico lungo
statico lungo
MappedByteBuffer statico
loadMappedFile (contesto di contesto, stringa filePath)
Carica un file dalla cartella delle risorse tramite la mappatura della memoria.
vuoto statico
tryLoadLibrary ( String NomeLib)
Prova a caricare una libreria nativa, se è già caricata ritorna direttamente.

Metodi ereditati

Costanti

pubblico statico finale lungo INVALID_POINTER

Valore costante: 0

Metodi pubblici

public static long createHandleFromFdAndOptions (contesto di contesto, provider FdAndOptionsHandleProvider <T>, stringa libName, stringa filePath, opzioni T)

Inizializza JNI e restituisce l'handle C++ con il descrittore di file e le opzioni per l'API dell'attività.

Parametri
contesto il contesto dell'app Android
fornitore provider per ottenere l'handle C++, in genere restituito dalla chiamata nativa
libNome nome della libreria C++ da caricare
percorso del file percorso del file da caricare
opzioni opzioni per impostare l'API dell'attività, utilizzata dal provider
ritorna
  • Gestire C++ tanto a lungo
Lancia
IOException Se il file del modello non viene caricato.

public static long createHandleFromLibrary (provider TaskJniUtils.EmptyHandleProvider , String libName)

Inizializza JNI e restituisce l'handle C++ caricando prima la libreria C++ e quindi richiamando TaskJniUtils.EmptyHandleProvider.createHandle() .

Parametri
fornitore provider per ottenere l'handle C++, in genere restituito dalla chiamata nativa
libNome
ritorna
  • Gestire C++ tanto a lungo

public static long createHandleWithMultipleAssetFilesFromLibrary (contesto di contesto, provider TaskJniUtils.MultipleBuffersHandleProvider , String libName, String... filePaths)

Inizializza JNI e restituisce l'handle C++ caricando prima la libreria C++ e quindi richiama TaskJniUtils.MultipleBuffersHandleProvider.createHandle(ByteBuffer) .

Parametri
contesto contesto dell'app
fornitore provider per ottenere il puntatore C++, in genere restituito dalla chiamata nativa
libNome nome della libreria C++ da caricare
filePaths percorsi di file da caricare
ritorna
  • Puntatore C++ finché è lungo
Lancia
IOException Se il file del modello non viene caricato.

public static long createProtoBaseOptionsHandle ( BaseOptions baseOptions)

Parametri
baseOpzioni

public static long createProtoBaseOptionsHandleWithLegacyNumThreads ( BaseOptions baseOptions, int legacyNumThreads)

Parametri
baseOpzioni
legacyNumThreads

public static MappedByteBuffer loadMappedFile (contesto di contesto, stringa filePath)

Carica un file dalla cartella delle risorse tramite la mappatura della memoria.

Parametri
contesto Contesto dell'applicazione per accedere alle risorse.
percorso del file Percorso della risorsa del file.
ritorna
  • il file mappato in memoria caricato.
Lancia
IOException Se il file del modello non viene caricato.

public static void tryLoadLibrary ( String libName)

Prova a caricare una libreria nativa, se è già caricata ritorna direttamente.

Parametri
libNome nome della lib