หลังจาก Google ปล่อย Android SDK เวอร์ชั่นล่าสุดออกมา ตอนนี้เกิดความวุ่นวายในวงการนักพัฒนาที่ใช้ Android SDK กับถ้วนหน้า
อาการหลังจากอัพเดต Android SDK หรือลง Android Studio หลังเดือนมีนาคม 2017
เนื่องจาก Android SDK ทั้งแบบดาวน์โหลดปกติ และทั้งแบบติดมาพร้อมกับ Android Studio มีการเปลี่ยนแปลงโครงสร้างของ SDK ทำให้กลุ่ม Framework หรือ Tools ต่างๆ อย่างเช่น Cocoa หรือ Cordova ได้เจอกับอาการประหลาดๆ ดังนี้
A. The “android” command is no longer available.
สั่งรัน android ใน Command Prompt แล้วขึ้นแจ้งเตือนแบบนี้:
The "android" command is no longer available. For manual SDK and AVD management, please use Android Studio. For command-line tools, use tools\bin\sdkmanager.bat and tools\bin\avdmanager.bat
หรือไม่ก็แบบนี้
************************************************************************* The "android" command is deprecated. For manual SDK, AVD, and project management, please use Android Studio. For command-line tools, use tools/bin/sdkmanager and tools/bin/avdmanager ************************************************************************* Invalid or unsupported command "" Supported commands are: android list target android list avd android list device android create avd android move avd android delete avd android list sdk android update sdk
B. Could not find gradle wrapper within android sdk
หรือถ้าใครใช้ PhoneGap, Cordova, Ionic ตอนสั่ง ionic run android อาจจะเจอข้อความแบบนี้
Could not find gradle wrapper within android sdk. Might need to update yo ur Android SDK
วิธีแก้ไข
วิธีแก้ไขที่ดีที่สุด ต้องมาจากกลุ่ม Framework และ Tools ที่ใช้งาน Android SDK อีกต่อหนึ่งล่ะครับ
แต่ถ้าพวกเราอยู่ในสถานการณ์เดียวกับโค้ชพล แบบว่างานต้องส่งพรุ่งนี้แล้วไรงี้ ให้ใช้วิธีต่อไปนี้แก้ขัด (workaround) ได้ครับ
- ดาวน์โหลด Android Build Tools มา (ดาวน์โหลดสำหรับเครื่อง Windows | ดาวน์โหลดสำหรับเครื่อง Mac) เราจะได้ ไฟล์ Zip มา 1 ไฟล์
- แตกไฟล์ zip ออกมา เราจะได้โฟลเดอร์ ชื่อ tools
- ก๊อปปี้โฟลเดอร์ tools ไว้
- เข้าไปที่โฟลเดอร์ของ Android SDK อย่างเช่นโฟลเดอร์ Android SDK ที่ติดมากับ Android Studio จะอยู่ที่
// ระบบ Windows C:\Users\<ชื่อ User ที่ใช้งานอยู่>\AppData\Local\Android\sdk // ระบบ macOS, OS X เปิดได้โดยใช้คำสั่ง Go > Go to Folder... จากโปรแกรม Finder Users/ชื่อ User ที่ใช้งานอยู่/Library/Android/sdk/
- ในโฟลเดอร์นี้ จะมีโฟลเดอร์ชื่อ tools เหมือนกัน ให้ทำการเปลี่ยนชื่อเป็นอย่างอื่นก่อน เช่น __tools
- วางโฟลเดอร์ tools ที่ก๊อปปี้มาจากการแตกไฟล์ Zip ลงไปในโฟลเดอร์ sdk แทนที่ตัวเดิม
- ปิดและเปิด Command Prompt ใหม่
- ลองใช้งานอีกครั้ง น่าจะหายดีแล้ว
น่าจะทำให้พวกเราหลายคนที่ติดปัญหารอดชีวิต ผ่านช่วงการเปลี่ยนผ่านนี้ไปก่อนได้นะ