20.11.2016 Views

ANDROID APP

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

308 บทที่ 12 การตรวจสอบการทำางานของแอพ<br />

LogCat สามารถใช้งานกับอุปกรณ์หลังจากที่มีการเรียกใช้คำสั่ง adb shell หรือเรียกใช้<br />

LogCat จากคอมมานด์ไลน์โดยตรงได้ดังนี้<br />

> [adb] logcat [] ... [] ...<br />

ข้อความต่างๆ ที่เกิดจากการทำงานของคลาส android.util.Log จะมีข้อมูลแท็กและลำดับความ<br />

สำคัญกำหนดไว้เสมอ โดยข้อมูลแท็กจะอธิบายถึงความหมายและสิ่งแอคทิวิตี้ที่กำลังทำ จากราย<br />

ละเอียดของข้อมูลนี้จะช่วยให้เราสามารถดูและคัดกรองข้อมูล Log ได้ง่ายขึ้น โดยข้อมูลแท็กที่ใช้มี<br />

ดังนี้<br />

m V – Verbose (ลำดับความสำคัญต่ำสุด)<br />

m D - Debug<br />

m I - Info<br />

m W – Warning<br />

m E - Error<br />

m F - Fatal<br />

m S – Silent (ลำดับความสำคัญสูงสุด)<br />

ข้อมูลของ LogCat มีรายละเอียดที่หลากหลาย เราจะต้องคัดกรองข้อมูลก่อนด้วยการกำหนด<br />

อาร์กิวเมนต์ tag:priority ให้แก่คำสั่ง LogCat ดังนี้<br />

> adb logcat ActivityManager:V *:S<br />

จากตัวอย่างข้างต้นจะแสดงข้อมูลของ ActivityManager ที่มีค่าแท็กเป็น V และแสดงข้อมูลที่<br />

มีแท็กเป็น S ทุกตัว<br />

การใช้งานบัฟเฟอร์แบบวงกลมนั้นมีการใช้ในระบบ Log ของระบบปฏิบัติการแอนดรอยด์<br />

โดยปกติแล้ว Log ทั่วไปจะถูกเก็บลงในบัฟเฟอร์ Main Log แต่ใน Android SDK 2.2 จะมีการใช้<br />

งานบัฟเฟอร์ 2 ส่วน โดยส่วนแรกจะเก็บข้อมูลของระบบโทรศัพท์และอุปกรณ์ไร้สายต่างๆ ขณะที่อีก<br />

ส่วนหนึ่งจะเก็บข้อมูลเกี่ยวกับเหตุการณ์ต่างๆ การใช้งานบัฟเฟอร์แบบแยกนี้สามารถใช้งานโดยใช้<br />

พารามิเตอร์ –b ได้ดังนี้<br />

> adb logcat -b events<br />

บัฟเฟอร์นี้จะแสดง Log ที่เกี่ยวข้องกับเหตุการณ์ต่างๆ<br />

I/menu_opened( 135): 0<br />

I/notification_cancel( 74): [com.android.phone,1,0]<br />

I/am_finish_activity( 74):<br />

[1128378040,38,com.android.contacts/.DialtactsActivity,app-request]<br />

I/am_pause_activity( 74):<br />

[1128378040,com.android.contacts/.DialtactsActivity]<br />

I/am_on_paused_called( 135): com.android.contacts.RecentCallsListActivity<br />

I/am_on_paused_called( 135): com.android.contacts.DialtactsActivity<br />

I/am_resume_activity( 74): [1127710848,2,com.android.launcher/.Launcher]<br />

I/am_on_resume_called( 135): com.android.launcher.Launcher<br />

I/am_destroy_activity( 74):<br />

[1128378040,38,com.android.contacts/.DialtactsActivity]<br />

I/power_sleep_requested( 74): 0<br />

I/power_screen_state( 74): [0,1,468,1]

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!