Android ทำงานได้ดีมากในการซ่อนข้อมูลสำคัญจากผู้ใช้ เมื่อเกิดข้อผิดพลาด คุณจะไม่เห็นข้อความที่คลุมเครืออย่างน่ากลัวเหมือนกับที่คุณทำบน Mac พวกเขาแค่... ผิดพลาดไป
แม้ว่าวิธีนี้จะดีสำหรับคนส่วนใหญ่ แต่ก็มีประโยชน์น้อยกว่าสำหรับนักพัฒนาที่ต้องการดูสาเหตุที่แอปของตนใช้งานไม่ได้ และสำหรับผู้ใช้ระดับสูงที่ต้องการลงมือปฏิบัติจริงมากขึ้น
นี่คือเหตุผลที่ logcat มีประโยชน์อย่างเหลือเชื่อ ช่วยให้คุณได้รับการถ่ายโอนข้อมูลบันทึกระบบของโทรศัพท์หรือแท็บเล็ตของคุณเพื่อแก้ไขปัญหา แม้ว่าผู้ใช้ส่วนใหญ่จะไม่ได้ใช้มัน แต่บางครั้งนักพัฒนาจะขอให้ผู้ใช้จัดเตรียมไฟล์บันทึกของอุปกรณ์เมื่อเกิดปัญหาขึ้น วิธีติดตั้ง logcat และวิธีใช้งานมีดังนี้
กำลังรับ Logcat
ก่อนที่คุณจะเริ่มสร้างบันทึกของระบบ คุณจะต้องปฏิบัติตามข้อกำหนดเบื้องต้นบางประการก่อน อย่างแรกคือการติดตั้ง Android Debug Bridge หรือที่เรียกกันทั่วไปว่า ADB ซึ่งมีเครื่องมือ Logcat
หากคุณใช้ Mac เช่นเดียวกับฉัน วิธีที่ง่ายที่สุดในการทำเช่นนี้คือการใช้ตัวจัดการแพ็คเกจ HomeBrew เมื่อติดตั้งแล้ว คุณเพียงแค่ต้องเรียกใช้ "brew install android-platform-tools" .
หากคุณใช้ Linux ขั้นตอนที่จำเป็นในการติดตั้ง ADB จะแตกต่างกันไปตามแต่ละรุ่น หากคุณใช้ Ubuntu คุณเพียงแค่ต้องเรียกใช้ "sudo apt-get install android-tools-adb" .
สุดท้าย หากคุณใช้ Windows คุณมีทางเลือกสองทาง อันดับแรก XDADevelopers มีโปรแกรมติดตั้ง ADB แบบคลิกเดียว ซึ่งรวมถึงไดรเวอร์ที่จำเป็นและ FastBoot หรือคุณสามารถติดตั้งผ่านตัวจัดการแพ็คเกจ Chocolatey แม้ว่าเวอร์ชันที่พร้อมใช้งานจะไม่ใช่เวอร์ชันใหม่ล่าสุด
นำอุปกรณ์ของคุณเข้าสู่โหมดนักพัฒนาซอฟต์แวร์
ถัดไป คุณจะต้องเปิดใช้งานโหมดนักพัฒนาซอฟต์แวร์บนอุปกรณ์ของคุณ โดยเปิดการตั้งค่าและไปที่ "เกี่ยวกับโทรศัพท์" หรือ "เกี่ยวกับแท็บเล็ต" จากนั้นเลื่อนลงไปที่ด้านล่างของหน้าจอแล้วแตะ "สร้างหมายเลข" เจ็ดครั้ง เมื่อคุณทำเสร็จแล้ว มันควรจะบอกคุณว่าคุณเข้าสู่โหมดนักพัฒนาซอฟต์แวร์แล้ว
กดย้อนกลับและไปที่ไดเร็กทอรีรากการตั้งค่า ซึ่งคุณจะเห็นสิ่งที่ระบุว่า "ตัวเลือกสำหรับนักพัฒนา" แตะตรงนั้น
จากนั้นเปิดการแก้ไขข้อบกพร่อง USB และเสียบอุปกรณ์ Android เข้ากับคอมพิวเตอร์ หากทุกอย่างเรียบร้อยดี คุณจะเห็นคำเตือนที่ดูเคร่งขรึมปรากฏขึ้นบนอุปกรณ์ของคุณ
ดูบันทึก
ตอนนี้เราเริ่มดูบันทึกได้แล้ว เปิดเทอร์มินัลหรือพรอมต์คำสั่งใหม่ แล้วเรียกใช้ "adb logcat" . จากนั้นคุณควรเห็นข้อความของระบบลดหลั่นลงมาในหน้าต่างเทอร์มินัลของคุณ หากคุณไม่ทำ แสดงว่ามีบางอย่างผิดพลาด อุปกรณ์ของคุณไม่ได้เชื่อมต่อกับคอมพิวเตอร์ ไม่ได้ติดตั้ง ADB อย่างถูกต้อง หรือคุณไม่ได้มีการดีบัก USB บนอุปกรณ์
แล้วถ้าคุณต้องการคัดลอกข้อความระบบของโทรศัพท์หรือแท็บเล็ตไปยังไฟล์ข้อความ เพื่อการวิเคราะห์ในภายหลัง ไวยากรณ์สำหรับการเปลี่ยนเส้นทางเอาต์พุตจะเหมือนกันบน Windows เช่นเดียวกับบน Mac เพียงเรียกใช้ "adb logcat> textfile.txt" . คุณยังสามารถทำสิ่งนี้ให้สำเร็จได้โดยเรียกใช้ "adb logcat -f filename" .
เมื่อคุณได้ไฟล์บันทึกแล้ว คุณสามารถแยกวิเคราะห์โดยใช้ Sed และ Awk หรือ Grep หรือเพียงแค่ส่งไปยังนักพัฒนาที่ร้องขอ
เป็นเรื่องที่ควรค่าแก่การชี้ให้เห็นว่า logcat จะทำงานตราบเท่าที่คุณบอกให้ทำ หากคุณกำลังคัดลอกเอาต์พุตไปยังไฟล์ข้อความและลืมที่จะสิ้นสุดการเชื่อมต่อ คุณไม่ควรแปลกใจเลยที่คุณจะไม่มีพื้นที่ว่างในฮาร์ดไดรฟ์ หากต้องการปิด เพียงกด CTRL-C .
ใครก็ตามที่เคยทำงานใน DevOps หรือการดูแลระบบจะบอกคุณว่าไฟล์บันทึกสามารถขยายเป็น สิบกิกะไบต์ ได้อย่างง่ายดาย และเกินกว่านั้น คุณได้รับคำเตือนแล้ว
หมายเหตุเกี่ยวกับการกรองเอาต์พุต
เป็นที่น่าสังเกตว่าคุณสามารถบอกให้ logcat จัดลำดับความสำคัญของเอาต์พุตบางประเภทได้ หากคุณเรียกใช้ logcat ด้วยแฟล็ก "V" ("adb logcat V") คุณจะเห็นทุกอย่างอย่างแน่นอน นั่นเป็นเพราะคุณได้เปิดใช้งาน "โหมดละเอียด"
แต่มีทริกเกอร์อื่นๆ ที่แสดงข้อความแสดงข้อผิดพลาดประเภทที่เฉพาะเจาะจงมากขึ้น ทริกเกอร์ "I" จะแสดงเฉพาะข้อมูลของคุณ ในขณะที่ "D" จะแสดงข้อความแก้ไขข้อบกพร่อง สำหรับข้อมูลเพิ่มเติม โปรดดูเอกสารทางการของ Android Debug Bridge
แม้ว่าจะเป็นที่น่าสังเกตว่าเว้นแต่คุณจะได้รับแจ้งเป็นอย่างอื่น เป็นการดีที่สุดที่จะเรียกใช้ logcat โดยใช้การตั้งค่าเริ่มต้น ทั้งนี้เพื่อให้ผู้ที่ขอไฟล์บันทึกสามารถรับข้อมูลทั้งหมดที่จำเป็นในการแก้ไขแอปของตนได้ และพวกเขาจะไม่พลาดสิ่งใด
มีวิธีแก้ปัญหาสำหรับอุปกรณ์ที่รูทหรือไม่
ที่จริงแล้วใช่! หากคุณมีโทรศัพท์หรือแท็บเล็ตที่รูทแล้ว คุณสามารถติดตั้ง "aLogCat" จาก Google Play Store ได้ นี้มาในรุ่นฟรีและรุ่นที่ต้องชำระเงิน ทั้งสองเหมือนกัน แม้ว่าอย่างหลังจะสนับสนุนนักพัฒนาด้านการเงิน
สิ่งที่ทำให้ aLogCat แตกต่างคือทำงานบนอุปกรณ์ของคุณโดยตรง และมาพร้อมกับคุณสมบัติบางอย่างที่ช่วยให้จัดการกับบันทึกข้อผิดพลาดได้ง่ายขึ้น
ข้อความจะถูกเน้น ช่วยให้คุณมองเห็นได้ว่าข้อความใดเป็นข้อผิดพลาด และการแจ้งเตือนของระบบที่ไม่เป็นอันตราย คุณยังสามารถแชร์ผ่านอีเมล บลูทูธ และบน PasteBin ผ่าน PasteDroid
หากคุณต้องการบันทึกบันทึกของคุณโดยตรงไปยังการ์ด SD โดยตรง คุณจะต้องดาวน์โหลดแอปพลิเคชันอื่นที่เรียกว่า aLogRec สิ่งนี้มาในเวอร์ชันฟรีและเวอร์ชันบริจาค และสามารถรับได้จาก Google Play Store
แต่ถ้าคุณต้องการดูและแก้ไขไฟล์บันทึก โดยตรง บนโทรศัพท์ของคุณ? ฉันขอแนะนำ Vim Touch ซึ่งเป็นโปรแกรมแก้ไขข้อความ VIM เวอร์ชันมือถือฟรี ครั้งแรกที่ฉันเขียนเกี่ยวกับเรื่องนี้เมื่อสองสามปีที่แล้ว เมื่อพูดถึงวิธีที่ดีที่สุดในการตั้งค่าสภาพแวดล้อมการพัฒนา PHP บนอุปกรณ์ Android
ก่อนที่เราจะสรุป ฉันต้องการชี้ให้เห็นว่าการรูทโทรศัพท์ของคุณอาจทำให้โทรศัพท์ของคุณไวต่อมัลแวร์มากขึ้น และแอปพลิเคชันบางอย่าง (โดยเฉพาะแอปพลิเคชันธนาคาร) ไม่ทำงาน
หากคุณกำลังพิจารณาที่จะรูทอุปกรณ์ของคุณเพียงเพื่อรับไฟล์บันทึก ฉันขอแสดงความนับถือ แนะนำให้คุณใช้วิธีการผูกข้อมูลแบบ ADB แทน ง่ายนิดเดียวและวิธี ปลอดภัยยิ่งขึ้น
เหนือกว่าคุณ!
คุณเคยต้องได้รับบันทึกระบบของโทรศัพท์หรือแท็บเล็ตหรือไม่ มาได้ยังไง? คุณพบว่ามันง่าย? คุณใช้วิธีไหน? แจ้งให้เราทราบในความคิดเห็นด้านล่าง