<uses-native-library>

ไวยากรณ์:
<uses-native-library
  android:name="string"
  android:required=["true" | "false"] />
ที่อยู่ใน:
<application>
description:

ระบุไลบรารีเนทีฟที่แชร์โดยผู้ให้บริการ ที่ต้องลิงก์กับแอปพลิเคชันด้วย องค์ประกอบนี้จะบอกให้ระบบทำให้โฆษณาเนทีฟ ไลบรารีที่สามารถเข้าถึงได้สำหรับแพ็กเกจ

ไลบรารี NDK สามารถเข้าถึงได้โดยค่าเริ่มต้น จึงไม่จำเป็นต้องมี แท็ก <uses-native-library>

ไลบรารีที่ใช้ร่วมกันแบบเนทีฟที่ไม่ใช่ NDK ซึ่งให้บริการโดยผู้จำหน่ายซิลิคอนหรือผู้ผลิตอุปกรณ์ จะเข้าถึงไม่ได้โดยค่าเริ่มต้นหากแอปกำหนดเป้าหมายเป็น Android 12 (API ระดับ 31) ขึ้นไป สามารถเข้าถึงไลบรารีได้ต่อเมื่อได้รับคำขออย่างชัดแจ้งโดยใช้ แท็ก <uses-native-library>

หากแอปกำหนดเป้าหมายเป็น Android 11 (API ระดับ 30) หรือต่ำกว่า การตั้งค่า ไม่ต้องใช้แท็ก <uses-native-library> ในกรณีนี้ โฆษณาเนทีฟที่แชร์ สามารถเข้าถึงห้องสมุดดังกล่าว ไม่ว่าจะเป็นห้องสมุด NDK หรือไม่ก็ตาม

องค์ประกอบนี้ยังส่งผลต่อการติดตั้งแอปพลิเคชันบนอุปกรณ์หนึ่งๆ ด้วย หากสิ่งนี้ มีอยู่ และมีการตั้งค่าแอตทริบิวต์ android:required เป็น true PackageManager เฟรมเวิร์กจะไม่อนุญาตให้ผู้ใช้ติดตั้งแอปพลิเคชัน ยกเว้นเมื่อมีไลบรารีอยู่ใน อุปกรณ์ของผู้ใช้

ส่วนต่อไปนี้จะอธิบายรายละเอียดแอตทริบิวต์ android:required

ดังนี้
android:name
ชื่อของไฟล์ไลบรารี
android:required
ค่าบูลีนที่ระบุว่าแอปพลิเคชันต้องใช้ ไลบรารีที่ระบุโดย android:name
  • "true": แอปพลิเคชันจะไม่ทำงานหากไม่มีข้อมูลนี้ ไลบรารี ระบบไม่อนุญาตให้ติดตั้งแอปพลิเคชันในอุปกรณ์ที่ไม่ ใช้ไลบรารีได้เลย
  • "false": แอปพลิเคชันใช้ ไลบรารีหากมี แต่ออกแบบมาเพื่อทำงานโดยไม่มีความจำเป็น ระบบจะอนุญาตให้ติดตั้งแอปพลิเคชัน แม้ว่าไลบรารีจะไม่ ปัจจุบัน หากคุณใช้ "false" คุณมีหน้าที่ดังนี้ การรับมือกรณีที่ไม่มีไลบรารีนั้นอยู่อย่างสวยงาม

โดยมีค่าเริ่มต้นเป็น "true"

เปิดตัวใน
API ระดับ 31
ดูเพิ่มเติม