TaskJniUtils

כיתה ציבורית TaskJniUtils

שימושי JNI עבור Task API.

כיתות מקוננות

מִמְשָׁק TaskJniUtils.EmptyHandleProvider תחביר סוכר כדי לקבל nativeHandle מרשימת פרמים ריקה.
מִמְשָׁק TaskJniUtils.FdAndOptionsHandleProvider <T> תחביר סוכר כדי לקבל nativeHandle מתאר קובץ ואפשרויות.
מִמְשָׁק TaskJniUtils.MultipleBuffersHandleProvider תחביר סוכר כדי לקבל nativeHandle ממערך של ByteBuffer s.

קבועים

ארוך INVALID_POINTER

שיטות ציבוריות

סטטי <T> ארוך
createHandleFromFdAndOptions (הקשר הקשר, ספק FdAndOptionsHandleProvider <T>, String libName, String filePath, אפשרויות T)
מאתחל את ה-JNI ומחזיר את ידית C++ עם מתאר קבצים ואפשרויות עבור ממשק API.
סטטי ארוך
createHandleFromLibrary (ספק TaskJniUtils.EmptyHandleProvider , String libName)
מאתחל את ה-JNI ומחזיר את הידית C++ על ידי טעינת ספריית C++ תחילה ולאחר מכן מפעיל את TaskJniUtils.EmptyHandleProvider.createHandle() .
סטטי ארוך
createHandleWithMultipleAssetFilesFromLibrary (הקשר הקשר, TaskJniUtils.MultipleBuffersHandleProvider ספק, String libName, String... filePaths)
מאתחל את ה-JNI ומחזיר את הידית C++ על ידי טעינת תחילה את ספריית C++ ולאחר מכן מפעיל את TaskJniUtils.MultipleBuffersHandleProvider.createHandle(ByteBuffer) .
סטטי ארוך
סטטי ארוך
סטטי MappedByteBuffer
loadMappedFile (הקשר הקשר, String filePath)
טוען קובץ מתיקיית הנכסים באמצעות מיפוי זיכרון.
ריק סטטי
tryLoadLibrary ( מחרוזת libName)
נסה לטעון ספרייה מקורית, אם היא כבר נטענה תחזור ישירות.

שיטות בירושה

קבועים

סופי סטטי ציבורי ארוך INVALID_POINTER

ערך קבוע: 0

שיטות ציבוריות

ציבורי סטטי ארוך createHandleFromFdAndOptions (הקשר הקשר, ספק <T> FdAndOptionsHandleProvider , String libName, String filePath, אפשרויות T)

מאתחל את ה-JNI ומחזיר את ידית C++ עם מתאר קבצים ואפשרויות עבור ממשק API.

פרמטרים
הֶקשֵׁר ההקשר של אפליקציית אנדרואיד
ספק ספק לקבל את ידית C++, בדרך כלל מוחזר משיחה מקומית
libName שם ה-C++ lib שייטען
filePath נתיב הקובץ לטעינה
אפשרויות אפשרויות להגדרת ממשק API, המשמש את הספק
החזרות
  • ידית C++ ארוכה
זורק
IOException אם קובץ הדגם לא מצליח להיטען.

ציבורי סטטי ארוך createHandleFromLibrary (ספק TaskJniUtils.EmptyHandleProvider , String libName)

מאתחל את ה-JNI ומחזיר את הידית C++ על ידי טעינת ספריית C++ תחילה ולאחר מכן מפעיל את TaskJniUtils.EmptyHandleProvider.createHandle() .

פרמטרים
ספק ספק לקבל את ידית C++, בדרך כלל מוחזר משיחה מקומית
libName
החזרות
  • ידית C++ ארוכה

ציבורי סטטי ארוך createHandleWithMultipleAssetFilesFromLibrary (הקשר הקשר, ספק TaskJniUtils.MultipleBuffersHandleProvider , String libName, String... filePaths)

מאתחל את ה-JNI ומחזיר את הידית C++ על ידי טעינת תחילה את ספריית C++ ולאחר מכן מפעיל את TaskJniUtils.MultipleBuffersHandleProvider.createHandle(ByteBuffer) .

פרמטרים
הֶקשֵׁר ההקשר של האפליקציה
ספק ספק כדי לקבל מצביע C++, בדרך כלל מוחזר משיחה מקורית
libName שם של C++ lib לטעינה
filePaths נתיבי קבצים לטעינה
החזרות
  • מצביע C++ ארוך
זורק
IOException אם קובץ הדגם לא מצליח להיטען.

public static long createProtoBaseOptionsHandle ( BaseOptions baseOptions)

פרמטרים
baseOptions

public static long createProtoBaseOptionsHandleWithLegacyNumThreads ( BaseOptions baseOptions, int legacyNumThreads)

פרמטרים
baseOptions
legacyNumThreads

ציבורי סטטי MappedByteBuffer loadMappedFile (הקשר הקשר, String filePath)

טוען קובץ מתיקיית הנכסים באמצעות מיפוי זיכרון.

פרמטרים
הֶקשֵׁר הקשר יישום לגישה לנכסים.
filePath נתיב הנכס של הקובץ.
החזרות
  • קובץ ממופה הזיכרון שנטען.
זורק
IOException אם קובץ הדגם לא מצליח להיטען.

ריק סטטי ציבורי tryLoadLibrary ( מחרוזת libName)

נסה לטעון ספרייה מקורית, אם היא כבר נטענה תחזור ישירות.

פרמטרים
libName שם ה-lib