<uses-native-library>

語法:
<uses-native-library
  android:name="string"
  android:required=["true" | "false"] />
包含於:
<application>
說明:

指定應用程式必須與之連結的 供應商提供的共享原生程式庫。這個元素會告知系統是否能存取套件的原生資料庫。

根據預設,NDK 程式庫可以存取,因此不需要 <uses-native-library> 標記。

根據預設,如果應用程式是以 Android 12 (API 級別 31) 以上為目標版本,則無法存取由晶片供應商或裝置製造商提供的非 NDK 原生共用程式庫。只有使用 <uses-native-library> 標記明確要求時,才能存取這些程式庫。

如果應用程式指定 Android 11 (API 級別 30) 以下版本,則不需要 <uses-native-library> 標記。在這種情況下,任何原生共享程式庫均可存取,無論其是否為 NDK 程式庫。

這個元素也會影響應用程式在特定裝置上的安裝情形。如果這個元素存在且其 android:required 屬性設為 truePackageManager 架構就不允許使用者安裝應用程式,除非使用者的裝置上存在這個程式庫。

下一節將詳細說明 android:required 屬性。

屬性:
android:name
程式庫檔案的名稱。
android:required
布林值,用來表示應用程式是否需要由 android:name 指定的程式庫。
  • "true":應用程式無法在沒有這個程式庫的情況下運作。系統不會允許在沒有該程式庫的裝置上安裝應用程式。
  • "false":應用程式會使用程式庫 (如果有的話),但設計為如有必要,不使用程式庫也可運作。即使沒有資料庫,系統仍允許安裝應用程式。如果您使用 "false",請自行妥善處理缺少程式庫的情況。

預設值為 "true"

導入版本:
API 級別 31
另請參閱: