15 March 2014

การทำ ADB หรือ Debugging ผ่าน WiFi

Updated on


        โดยปกตินั้นการใช้งาน Debugging จะกระทำผ่าน USB เท่านั้น หรือที่เรียกว่า USB Debugging หรือ ADB USB นั่นเอง แต่นอกจาก USB แล้วยังสามารถ Debugging ผ่าน WiFi ได้เช่นกัน จะเรียกกันว่า WiFi Debugging หรือ ADB WiFi (เจ้าของบล็อกขอใช้คำว่า ADB WiFi) ทำให้ไม่ต้องต่อสาย USB ตลอดเวลาก็สามารถ Debugging ได้

        สำหรับบทความนี้จะเป็นวิธีในการทำ ADB WiFi แบบเครื่องที่ยังไม่ Root แต่ถ้า Root เครื่องแล้วแนะนำให้ใช้แอปพลิเคชันไปเลยจะง่ายกว่า อย่าง WiFi ADB หรือ Power Toggle

สำหรับเครื่องของผู้ที่เข้ามาอ่านที่ทำการ Root แล้วให้ข้ามไปอ่านขั้นตอน "การสั่งให้คอมพิวเตอร์เชื่อมต่อ Debugging ผ่าน WiFi" ได้เลย

เปิดใช้งาน Debugging ผ่าน WiFi โดยใช้ ADB

        ทีนี้มาดูในกรณีที่ไม่ได้ Root เครื่องกันต่อ ก่อนอื่นจะต้องเปิด USB Debugging ใน Developer options เสียก่อน ถ้าหา Developer options ไม่เจอให้ดูที่ [Android Dev Tips] หา Developer Options ไม่เจอ~


        จากนั้นเชื่อมต่อกับคอมพิวเตอร์ผ่าน USB ถ้าพึ่งเคยต่อ USB Debugging ครั้งแรกก็ให้ลงไดรเวอร์ของ ADB ให้เรียบร้อย [Android Dev Tips] รวม ADB Driver สำหรับอุปกรณ์แอนดรอยด์

        ทำการเปิด Command Prompt ขึ้นมาซะ โดย Path ไปที่ ../sdk/platform-tools/ หรือถ้าใช้ Windows Vista, 7, 8 หรือ 8.1 ให้เปิดเข้าไปที่โฟลเดอร์ที่ติดตั้ง sdk ไว้ แล้วกด Shift ค้างไว้แล้วคลิกขวาบนโฟลเดอร์ platform-tools จะมี Open command window here ให้เลือก (ถ้ายังใช้ Windows XP อยู่ ก็เปลี่ยนเถอะครับ = =)


        จากนั้นพิมคำสั่งว่า

adb tcpip 5555

        จะเป็นการเปิดใช้งาน TCP/IP ผ่านพอร์ต 5555 (นิยมกำหนดเป็น 5555) จากนั้นให้ถอดสาย USB ออกได้เลย


การสั่งให้คอมพิวเตอร์เชื่อมต่อ Debugging ผ่าน WiFi

        พิมคำสั่งใน Command Prompt ดังนี้

adb connect <IP_ADDRESS>:<PORT>

        โดยที่ IP Address คือหมายเลข IP ของอุปกรณ์แอนดรอยด์ (อย่าลืมว่าจะต้องอยู่ในวงแลนเดียวกัน) แล้วตามด้วยหมายเลขพอร์ต (ที่กำหนดไว้ว่า 5555) สำหรับเจ้าของบล็อกหมายเลข IP ของเครื่องที่ใช้เป็น 192.168.1.36 และพอร์ตเป็น 5555 ดังนั้นก็จะต้องพิม

adb connect 192.168.1.36:5555

        ก็จะเห็นข้อความว่า connected to [IP Address]:[Port] หมายความว่าเชื่อมต่อได้แล้ว แต่ถ้าขึ้นข้อความว่า unable to connect to [IP Address]:[Port]:[Port] ให้ทำการตรวจสอบหมายเลข IP ของอุปกรณ์แอนดรอยด์ให้ถูกต้อง หรือตรวจสอบว่าคอมพิวเตอร์และอุปกรณ์แอนดรอยด์อยู่ในวงแลนเดียวกันจริงๆ หรือไม่ก็วงแลนที่เชื่อมต่ออยู่บล็อกหมายเลขพอร์ต 5555 ก็ให้เปลี่ยนหมายเลขพอร์ตซะ หรือลองเสียบสาย USB แล้วใช้คำสั่ง adb tcpip 5555 ใหม่อีกครั้ง


        เท่านี้ก็สามารถเชื่อมต่อ ADB WiFi ได้แล้ว

        โดยจะสังเกตเห็นว่า Serial Number ที่แสดงมีหมายเลข IP และพอร์ตแสดงอยู่ต่อท้าย หมายความว่าเชื่อมต่อ Debugging ผ่าน WiFi อยู่นั่นเอง


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

        และถ้าอยากยกเลิกการเชื่อมต่อผ่าน WiFi ให้พิมคำสั่ง

adb usb

        คำสั่งนี้จะทำให้ ADB เปลี่ยนกลับไปเชื่อมต่อผ่าน USB ดังเดิม จากนั้นก็ลองต่อสาย USB เข้ากับคอมพิวเตอร์แล้วใช้งานได้ตามปกติเลย


        ถ้าไม่อยากพิมพ์คำสั่งแบบนี้ทุกครั้ง บน Windows สามารถทำเป็น Batch File เพื่อกดให้ทำงานได้เลย [Android Dev Tips] ทำ Batch File สำหรับ Execute คำสั่ง ADB

        หรือวิธีที่ดีกว่านี้ก็คือใช้ Plugin ของ Android Studio ที่ชื่อว่า ADB WiFi จะช่วยให้ผู้ที่หลงเข้ามาอ่านสามารถสั่งเชื่อมต่อ ADB ผ่าน WiFi โดยกดจากเมนูใน Android Studio ได้เลย ADB WiFi [GitHub] ซึ่งเป็น Plugin ที่ Layer NET เขียนขึ้นมา