เรารู้กันว่าแพลตฟอร์ม Android นั้นใช้ภาษาจาวาในการพัฒนา แต่ตอนคอมไพล์จะแปลงเป็นโค้ดสำหรับ Dalvik ซึ่งเป็นเวอร์ชวลแมชชีนเฉพาะของ Android เอง ไม่ใช่ JRE และไบต์โค้ดเหมือนแพลตฟอร์มจาวาของซัน
อย่างไรก็ตาม ไม่ว่าจะเป็นเวอร์ชวลแมชชีนของค่ายไหน การพัฒนาโปรแกรมบน Android ก็ไม่ใช่ native เหมือนแพลตฟอร์มอื่นๆ บนมือถือ (เช่น iPhone หรือ Symbian) ซึ่งในบางครั้งก็เป็นปัญหาสำหรับนักพัฒนาที่ต้องการเขียนโปรแกรมแบบ native ล่าสุดกูเกิลได้อุดช่องว่างนี้แล้ว โดยออก Android Native Development Kit (NDK) สำหรับ Android 1.5 มาให้ใช้กัน
Android NDK จะทำให้เขียนโปรแกรมด้วยภาษา C/C++ บน Android ได้ ในอนาคตจะสนับสนุนไลบรารีทั้งหมดของแพลตฟอร์ม Android แต่ในรุ่นแรกจะมีแค่ไลบรารีพื้นฐานอย่าง libc, libz, liblog เป็นต้น โค้ดที่ได้จะเป็นโค้ดของสถาปัตยกรรม ARMv5TE
กูเกิลเตือนว่าการพัฒนาโปรแกรมด้วย NDK แทน SDK ปกติจะทำให้โค้ดซับซ้อนขึ้น และเข้าไม่ถึงฟีเจอร์ของเฟรมเวิร์ค (ที่เป็น Dalvik) แต่บางโปรแกรมที่ต้องการพลังของ native ก็อาจจำเป็นต้องใช้มัน
ที่มา - Android Developer Blog
Comments
งี้ก็ทำอะไรเจ๋งๆได้แล้วสิ
onedd.net
onedd.net
ก็ยังไม่ได้ ยังมีเรื่อง Permission เซ็งๆมารบกวนใจอยู่ แต่โดยรวมก็ทำให้ทำอะไรได้มากขึ้นอีก"เล็กน้อย"
ส่วน NDK ไม่ใช่การเขียนโปรแกรมเป็น Native-Only แต่เป็นการเขียนบางส่วนของโปรแกรมให้เป็น Native แล้วเชื่อมด้วย JNI เฉยๆ
[code]Please note that the NDK does not enable you to develop native-only applications. Android's primary runtime remains the Dalvik virtual machine.[/code]
ซึ่งตรงนี้ประโยชน์ที่จะเห็นได้ชัดคือการทำ Real Time Image Processing ที่ถ้าทำบน VM มันไม่ไหวแน่ๆ แต่ถ้าทำผ่าน JNI น่าจะไหว
http://www.nuuneoi.com
รักมาก
รอ bluez-api ถ้ามันมาเมื่อใหร่นี่ได้เฮแน่ๆ
แต่เครื่องมันแพงอ่ะ
LewCPE
lewcpe.com, @wasonliw
ถ้าผมสนใจอยากเขียนโปรแกรม Android แต่ผมไม่มีพื้นฐานเลย ผมควรเริ่มจากอะไรก่อนครับ?
รู้สึกว่าต้องจริงจังสักที
Java ครับ
"Experience is the best teacher"
เริ่มจากไปเว็บนี้แล้วทำ Hello World ให้ได้ครับ
http://developer.android.com/sdk/1.5_r2/index.html
http://www.nuuneoi.com
จริงๆผมเคยเรียน วิทยาการคอมพิวเตอร์ นะ เรียนได้ปีนึงเจอเลขฐานสิบ ออกมาเรียนนิเทศฯเลย(เรียนจบละ)
ตอนนี้เลยอยากเอาชนะตัวเองให้ได้
เลขฐานสิบ ใช้อยู่ทุกวันจะไปกลัวอะไรกันครับ? ;)
เลขฐานสอง ก็มีแค่ 0 1 อย่าไปกลัวมัน
เลขฐานสิบหก ก็แถม A-F เอง ง่าย ๆ
เขียนโปรแกรมไม่ค่อยเกี่ยวกับเลขฐานสักเท่าไหร่(มีบ้าง) ถ้าใจรักเสียอย่าง ยากแค่ไหนก็ไม่มีปัญหาหรอกครับ ลองเริ่มเขียนดูสิครับ
My FingerSports Site
Jusci - Google Plus - Twitter
เหมือนกันเลย อยากเขียนโปรแกรมเป็นบ้าง มีไอเดียในหัวเยอะเยะ แต่ทำไม่เป็น ต้องวาน/จ้างเขาตลอด
------
Unlimited Asian Music (ดูเอ็มวี ไทย, เกาหลี และญี่ปุ่น ฟรีๆ)
ต้องอย่างนี้สิ!
"ถ้าจะมาไม่มาทั้งใจ ก็กลับไปเสียดีกว่า" ลันล้าๆๆ
Patrickz's web |
Patrickz's blog | blog @ G2K | blog @ narisa
Patrickz's blog|
linkedin
ไชโย แทบไม่อยากจะเชื่อสายตาตัวเองเลย
จริงๆตอนแรกสนใจ Android มาก เพราะเห็นว่าพัฒนาจาก Linux แต่ก็ต้องถอดใจเมื่อพบว่าการพัฒนาแบบ Native ทำได้เพียงแค่บน Emulator
แต่ตอนนี้เปลี่ยนใจล่ะ โหลดโลดดดด