ทดสอบลักษณะการทำงานของระดับการเข้าถึงแพ็กเกจ

หากแอปของคุณอาศัยการโต้ตอบกับแอปอื่นๆ เพื่อให้ Use Case สมบูรณ์ คุณควรทดสอบว่าการเปลี่ยนแปลงระดับการมองเห็นแพ็กเกจใน Android 11 (API ระดับ 30) ขึ้นไปส่งผลต่อแอปของคุณอย่างไร

คู่มือนี้ยังมีคำแนะนำเกี่ยวกับวิธีทดสอบการเปลี่ยนแปลงลักษณะการทำงาน และช่วยคุณกำหนดค่าข้อความบันทึกเพื่อพิจารณาผลกระทบที่อาจเกิดขึ้นกับแอปในระดับที่ละเอียดยิ่งขึ้น

ทดสอบการเปลี่ยนแปลงลักษณะการทำงาน

หากต้องการทดสอบว่าการเปลี่ยนแปลงลักษณะการทํางานนี้ส่งผลต่อแอปของคุณหรือไม่ ให้ทําตามขั้นตอนต่อไปนี้

  1. ติดตั้ง Android Studio 3.6.1 ขึ้นไป
  2. ติดตั้ง Gradle เวอร์ชันล่าสุดที่ Android Studio รองรับ
  3. ตั้งค่า targetSdkVersion ของแอปเป็น 30 ขึ้นไป
  4. อย่าใส่องค์ประกอบ <queries> ไว้ในไฟล์ Manifest ของแอป
  5. โทรไปที่ getInstalledApplications() หรือ getInstalledPackages() ทั้ง 2 วิธีจะแสดงรายการที่กรองแล้วเมื่อดำเนินการเสร็จสมบูรณ์
  6. ดูว่าฟีเจอร์ใดของแอปไม่ทำงาน
  7. ใส่รายการ <queries> ที่ถูกต้องเพื่อแก้ไขฟีเจอร์เหล่านั้น

กำหนดค่าข้อความบันทึกสำหรับการกรองแพ็กเกจ

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

adb shell pm log-visibility --enable PACKAGE_NAME

จากนั้นทุกครั้งที่กรองแพ็กเกจออกจากค่าที่แสดงผลของออบเจ็กต์ PackageManager คุณจะเห็นข้อความที่คล้ายกับข้อความต่อไปนี้ใน Logcat

I/AppsFilter: interaction: PackageSetting{7654321 \
  com.example.myapp/12345} -> PackageSetting{...} BLOCKED