บางครั้ง การเขียนแฟลช หรือการทำงานบางอย่าง เราต้องตรวจจับการตั้งค่า หรือความพร้อมของ User ก่อนจะแสดงผลออกไป หรือก่อนจะทำงาน เพื่อเลือกความเหมาะสมที่จะทำงาน
เช่น อย่างน้อยเลย ก็ต้องตรวจจับว่ามี Flash Player อยู่หรือเปล่า แต่ใน Actionscript 3.0 น้อยคนที่จะรุ้ว่า เราสามารถตรวจได้มากกว่านั้น
เราสามารถตรวจได้ว่า ใช้ OS อะไร ตรวจได้ว่า เครื่องมี sound card ที่พร้อมจะฟังเพลงหรือไม่ หรือพร้อมจะดู vdo หรือไม่ หรือแม้กระทั่ง ตรวจว่า เครื่องนี้ถูกตั้งค่าเป็นภาษาอะไร
ลองมาดูทีละข้อนะครับ ว่าเราสามารถตรวจข้อมูลพวกนี้ได้ยังไงบ้าง
เริ่มจาก การตรวจเวอร์ชั่นของ Flash Player เราสามารถ Download ชุดตรวจ ได้จากทาง Adobe เลย ที่
http://www.adobe.com/products/flashplayer/download/detection_kit/
ซึ่งข้อนี้ อยากให้ลอง Download กันเอง เพราะมีวิธีใช้งานที่ละเอียดอยู่ในนั้่นอยู่แล้ว คงไม่ขออธิบาย
Operating System Detection เช็คระบบปฏิบัติการ
var os:String = System.capabilities.os.substr(0, 3); if (os == "Win") { trace("ใช้งาน WINDOWS OS"); } else if (os == "Mac") { trace("ใช้งาน MAC OS"); } else { trace("ใช้ Linux หรือ Unix"); }
Type Of FlashPlayer Detection เช็คชนิด Player
if(flash.system.Capabilities.playerType == "Plugin") { trace("Stand Alone Player"); } else if(flash.system.Capabilities.playerType == "ActiveX") { trace("Flash Player On Internet Exploror (active X)"); } else { trace("on Firefox Opera Safari"); }
language Detection เช็คภาษาของเครื่อง
trace(flash.system.Capabilities.language); //ผลออกมา เป็นภาษาของเครื่อง เช่น en-US
Screen Resolution Detection เช็คความละเอียดหน้าจอ
trace(flash.system.Capabilities.screenResolutionX); trace(flash.system.Capabilities.screenResolutionY);
Audio Detection เช็คว่าเครื่องติดตั้ง Driver พร้อมที่จะเล่นเสียง หรือไม่
if (flash.system.Capabilities.hasAudio) { trace("เล่นเสียงได้ Loading Sound"); } else { trace("เล่นเสียงไม่ได้ Cannot Play Sound"); }
สำหรับบางเครื่อง ที่เล่น MP3 ไม่ได้ ซึ่งส่วนมากจะพบใน Ubuntu แต่ Windows จะติดตั้ง Codec เล่น MP3 มาให้เลย
MP3 Codec Detection
if (flash.system.Capabilities.hasMP3) { sound = new Sound(new URLRequest("Music.mp3")); sound.play( ); } else { trace("ไม่มี MP3 Codec"); }
ลงเอาไปใช้ให้เกิดประโยชน์นะครับ
อ้อ อย่าลืมว่า ข้างบนเป็น Actionsctipt 3.0 นะครับ

