วิธีดูว่าแอป API ที่ซ่อนอยู่ใดบ้างที่ใช้ใน Android P

Android P จำกัดไม่ให้แอปเข้าถึง API ที่ซ่อนอยู่และอินเทอร์เฟซที่ไม่ใช่ SDK การใช้ Logcat ช่วยให้เห็นได้ง่ายว่า API ที่ไม่ใช่ SDK ใดบ้างที่แอปใช้ใน Android รุ่นใหม่

ในช่วงปลายเดือนกุมภาพันธ์ เราพบการคอมมิตในโค้ดโอเพ่นซอร์สของ Android ที่แนะนำสิ่งนั้น Google จะจำกัดแอปพลิเคชันไม่ให้เข้าถึง API ที่ไม่มีเอกสาร/ซ่อนอยู่ ในชุดพัฒนาซอฟต์แวร์ Android (SDK) ยักษ์ใหญ่ด้านการค้นหายืนยันการเปลี่ยนแปลงเหล่านั้นในภายหลัง ใน แอนดรอยด์พีข้อจำกัดของ API ได้ขยายให้ครอบคลุมอินเทอร์เฟซภาษา Java ของ SDK โดยเริ่มจากอินเทอร์เฟซที่ไม่ค่อยได้ใช้ และในที่สุดก็ขยายไปสู่วิธีการและช่องที่ไม่ใช่ SDK อื่นๆ การแสดงตัวอย่างนักพัฒนา Android P ครั้งแรกจะแสดงคำเตือนเมื่อแอปใช้อินเทอร์เฟซที่ไม่ใช่ SDK แต่ไม่ชัดเจนว่ามีการเข้าถึง API ที่ซ่อนอยู่ใดบ้าง โชคดีที่ Logcat ช่วยให้ง่ายขึ้น

ล็อกแคทซึ่งเป็นเครื่องมือบรรทัดคำสั่งของ Android Debug Bridge (เอดีบี) ที่ทิ้งบันทึกการทำงานของข้อความระบบ Android สามารถใช้เพื่อดูว่าแอป API ที่ซ่อนอยู่ใดบ้างที่ใช้ใน Android P ในฐานะสมาชิกอาวุโสของ XDA เทลเพอริออน ค้นพบ โดยกรอง Logcat ด้วยสตริง "การเข้าถึงที่ซ่อนอยู่" จะเปิดเผยรายการวิธีการและบริการภายในที่แอพที่ทำงานอยู่ได้เข้าถึงล่าสุด

หนึ่งในวิธีที่ง่ายที่สุดในการ ตั้งค่า Logcat คือการดาวน์โหลดไบนารี ADB จาก Google สำหรับระบบปฏิบัติการพีซีของคุณ ติดตั้งไดรเวอร์ USB ที่เหมาะสมสำหรับโทรศัพท์ของคุณ และเปิดใช้งาน การดีบัก USB ในระบบปฏิบัติการ Android ตัวเลือกนักพัฒนา เมนู. (โทรศัพท์ Huawei ปิดใช้งาน Logcat ตามค่าเริ่มต้น; เพื่อเปิดใช้งาน ให้เปิดแอปตัวโทรออก ป้อนรหัส *#*#2846579#*#*, เลือก การตั้งค่าพื้นหลังและทำเครื่องหมายทุกการตั้งค่าในกล่องโต้ตอบ) เราแนะนำให้ใช้ แมทล็อกซึ่งเป็นแอปค่าใช้จ่ายต่ำและใช้งานง่ายโดย XDA Junior Member พลัสคิวบ์. สามารถรวบรวมจากแหล่งที่มาหรือดาวน์โหลดจาก Google Play Store

[appbox googleplay com.pluscubed.matlog]

หากต้องการเพิ่มตัวกรอง ให้แตะเมนูสามจุดที่มุมขวาบนของ Matlog เลือก ตัวกรองและแตะ เพิ่มตัวกรอง จากนั้นพิมพ์ “การเข้าถึงที่ซ่อนอยู่” (ไม่มีเครื่องหมายคำพูด) และเลือก ตกลง.

แม้ว่าแอปส่วนใหญ่จะเข้าถึง API ที่ซ่อนอยู่ค่อนข้างไม่เป็นอันตราย แต่การตัดสินใจของ Google ที่จะจำกัด non-SDK อินเทอร์เฟซใน Android P มีวัตถุประสงค์เพื่อป้องกันการละเมิด API ที่อาจส่งผลต่อความเป็นส่วนตัวของผู้ใช้และ ความปลอดภัย. เรียน โดยนักวิจัยจากมหาวิทยาลัย Luxenbourg พบว่าแอปที่เป็นอันตรายจำนวนหนึ่งใช้วิธีการ API ภายในส่วนตัวเพื่อแทรกโค้ดโฆษณาลงในแอปใดๆ รวมถึงบริการของระบบด้วย

นอกจากนี้ยังเป็นส่วนหนึ่งของความพยายามในวงกว้างของ Google ในการปราบปรามแอปปลอมใน Android Android P จำกัดแอปพื้นหลังไม่ให้เข้าถึงอุปกรณ์ กล้อง และ ไมโครโฟนและก่อนหน้านี้ Google ขู่ว่าจะทำเช่นนั้น ลบแอปออกจาก Google Play Store ที่ใช้ API การเข้าถึงของ Android ในทางที่ผิด—บริการที่ออกแบบมาเพื่อทำให้แอป Android ใช้งานได้ง่ายขึ้นสำหรับผู้ทุพพลภาพบางราย ในรูปแบบที่ไม่เป็นไปตามหลักเกณฑ์อย่างเป็นทางการ