ไม่มีอะไรผิดปกติกับรหัสของคุณ นี่คือข้อความบันทึกภายในของ Apple และคุณควรยื่นเรดาร์เกี่ยวกับเรื่องนี้
มีคำใบ้สองข้อที่แสดงว่านี่อาจเป็นรหัสของ Apple
ขีดล่างที่นำชื่อเมธอด_handleNonLaunchSpecificActions:forScene:withTransitionContext:completion
เป็นแบบแผนที่ระบุว่าวิธีนั้นเป็นแบบส่วนตัว / ภายในกับคลาสที่มีการประกาศใน (ดูความคิดเห็นนี้)
มีเหตุผลที่จะคาดเดาว่าคำนำหน้าตัวอักษรสองตัวในFBSSceneSnapshotAction
นั้นย่อสำหรับ FrontBoard ซึ่งตาม Rene Ritchie ใน " iOS 9 รายการสิ่งที่ปรารถนา: โหมดผู้เยี่ยมชม"เป็นส่วนหนึ่งของตระกูลซอฟต์แวร์ทั้งหมดที่เกี่ยวข้องกับการเปิดตัวแอพ:
ด้วย iOS 8 แอปเปิ้ลได้ปรับโครงสร้างผู้จัดการระบบ SpringBoard เป็นส่วนประกอบที่เล็กกว่าและมีความสำคัญมากกว่า นอกจาก BackBoard แล้วที่ถูกแยกออกเพื่อจัดการกับงานพื้นหลังพวกเขาได้เพิ่ม Frontboard สำหรับงานเบื้องหน้า พวกเขายังเพิ่ม PreBoard เพื่อจัดการกับหน้าจอล็อคภายใต้เงื่อนไขที่ปลอดภัยและเข้ารหัส [ ... ]
ฉันไม่ทราบว่าBS
คำนำหน้าใช้BSSettings
สำหรับอะไร แต่การวิเคราะห์ข้อความบันทึกนี้จะระบุว่าไม่ใช่สิ่งที่คุณทำและคุณควรยื่นเรดาร์ด้วยขั้นตอนในการทำซ้ำข้อความบันทึก
หากคุณต้องการที่จะลองและคว้ากองติดตามคุณสามารถใช้หมวดหมู่ที่เชื่อมโยงกับที่นี่ บางคนอาจแย้งว่าการลบล้าง API ส่วนตัวนั้นเป็นความคิดที่ไม่ดี แต่ในกรณีนี้การฉีดชั่วคราวเพื่อดึงร่องรอยสแต็กจะไม่เป็นอันตรายเกินไป
แก้ไข:
แต่เรายังต้องการทราบว่าการกระทำนี้คืออะไร ดังนั้นฉันจึงใส่เบรกพอยต์-[UIApplication _handleNonLaunchSpecificActions:forScene:withTransitionContext:completion]
และเริ่มพิมพ์ค่าลงทะเบียนและพบคลาสที่เรียกว่าFBSceneImpl
ซึ่งมีข้อมูลมากมายเกี่ยวกับแอปพลิเคชันของฉัน:
เราสามารถค้นหาวิธีส่วนตัวที่เรียกว่าถัดไป (เก็บไว้ในตัวนับโปรแกรมลงทะเบียน 15)
ฉันพยายามค้นหาการFBSceneSnapshotAction
อ้างอิงที่ไม่มีการจัดการในบันทึก แต่ไม่มีลูกเต๋า แล้วฉัน subclassed UIApplication _handleNonLaunchSpecificActions:forScene:withTransitionContext:completion
และสถานภาพ ตอนนี้ฉันสามารถทำกิจกรรมได้โดยตรง แต่ถึงกระนั้นเราก็ไม่รู้ว่ามันคืออะไร
จากนั้นฉันดู FBSceneSnapshotAction อีกครั้ง ปรากฎว่ามันมี superclass BSAction
ที่เรียกว่า
จากนั้นฉันก็เขียนเครื่องมือคล้ายกับRuntimeBrowserและค้นหา subclasses ทั้งหมดของ BSAction ปรากฎว่ามีรายการของพวกเขาค่อนข้างมาก:
ชื่อเมธอดสองชื่อที่เรามี (หนึ่งชื่อจากบันทึกและอีกชื่อหนึ่งจากตัวนับโปรแกรมบนอุปกรณ์) ระบุว่าการกระทำเหล่านี้ใช้ภายใต้ประทุนเพื่อส่งการกระทำรอบ ๆ ระบบ
การกระทำบางอย่างอาจส่งถึงการโทรกลับของผู้แทนแอป
สิ่งที่เกิดขึ้นที่นี่คือมีการดำเนินการที่ไม่ได้จัดการอย่างถูกต้องและระบบสังเกตเห็น เราไม่ควรเห็นมันอย่างชัดเจน