Google

ข่าวนี้น่าจะเป็น "สัญญาณ" อย่างเป็นทางการอย่างแรกจากกูเกิลถึง Ice Cream Sandwich ที่จะเปิดตัวในอีกไม่กี่เดือนข้างหน้านี้

กูเกิลได้โพสต์บล็อก Android Developers ว่า Ice Cream Sandwich จะรวมหน้าจอทุกขนาดเข้าด้วยกัน ไม่ใช่แยกเป็น 2.x/3.x เหมือนที่แล้วมา ดังนั้นขอให้นักพัฒนาแอพเตรียมรับมือเรื่องขนาดของหน้าจอที่จะเพิ่มเข้ามาด้วย โดยเฉพาะกรณีของแอพที่ออกแบบมาสำหรับแท็บเล็ต ซึ่งจะต้องไปรันบนมือถือที่หน้าจอเล็กกว่าเดิม

กูเกิลแนะนำแนวทาง 2 ประการสำหรับแอพบน Honeycomb ว่าให้รองรับหน้าจอที่เล็กลงใน APK ไฟล์เดียวกัน (ข่าวเก่า) หรือไม่ก็ประกาศให้ชัดเจนว่าแอพตัวนั้นไม่รองรับหน้าจอขนาดเล็ก ซึ่งทำได้ผ่านการประกาศข้อมูลในไฟล์ Android Manifest

สำหรับการปรับแอพให้เหมาะกับหน้าจอขนาดเล็ก กูเกิลแนะนำให้ใช้เทคนิค fragment ที่มีใน Android รุ่นหลังๆ โดยหน้าจอขนาดเล็กจะแสดง 1 fragment ส่วนหน้าจอขนาดใหญ่สามารถนำ fragment หลายอันมาแสดงผลพร้อมกันได้

Android Fragment

อีกประเด็นที่กูเกิลแนะนำคือ "ปุ่มคำสั่ง" ภายในแอพ ที่แสดงผลแตกต่างกันไปบนหน้าจอมือถือและแท็บเล็ต (มือถือต้องกด Menu เพื่อเรียกปุ่ม, แท็บเล็ตแสดงอยู่บน ActionBar โดยตรง) ซึ่งกูเกิลแนะนำให้แอพเรียกผ่าน ActionBar ซึ่งจะจัดการเรื่องนี้ให้อัตโนมัติ แต่ถ้าแอพนั้นทำปุ่มใช้เองก็คงต้องแก้กันเยอะหน่อย

ActionBar

ข้อมูลเหล่านี้ไม่ใช่เรื่องใหม่ เพราะประกาศมาตั้งแต่ Honeycomb แล้ว แต่รอบนี้จะกลับทิศกันเพราะแอพจาก Honeycomb จะต้องไปรันบน ICS เวอร์ชันจอเล็กด้วย ใครที่พัฒนาแอพบน Android ก็ควรเตรียมพร้อมรับมือ ICS กันสักหน่อยนะครับ

ที่มา - Android Developers Blog

Hiring! บริษัทที่น่าสนใจ

Carmen Software company cover
Carmen Software
Hotel Financial Solutions
Bangmod Enterprise company cover
Bangmod Enterprise
The leader in Cloud Server and Hosting in Thailand.
LTMH TECH company cover
LTMH TECH
LTMH TECH มุ่งเน้นการพัฒนาผลิตภัณฑ์ที่สามารถช่วยพันธมิตรของเราให้บรรลุเป้าหมาย

จะไหวหรอเนี่ย แสดงว่าต่อจาก ice-cream นี่ทำต้องทำแอพฯรองรับทั้ง tablet/phone เลย? แค่นี้นัก dev ก็ขี้เกียจจะแก้/เพิ่ม feature จะตายอยู่แล้ว ของจริง dev คงแยก version ให้เองล่ะมั้ง

ถ้าใช้ฟีเจอร์อย่างที่แนะนำมา (Fragment, ActionBar, อื่น ๆ) ก็ไม่น่ามีปัญหา แต่ถ้าคัสตอมเยอะๆ นี่งานงอกแน่ครับ

แต่ในต้นฉบับก็มีพูดถึงเหมือนกันนะว่า ถ้าไม่อยากให้ติดตั้งบนมือถือได้ ก็แก้ใน manifestให้ไม่อนุญาตให้ติดตั้งได้เหมือนกันคัรบ

จะมีวันที่การทำแอพบนอุปกรณ์พกพามีมาตรฐานเดียวนิ่งๆ อย่างกรณีทำเว็บด้วย HTML มั้ยนะ (หรือจะเลิกฮิตเพราะไปรวมร่างกับ desktop ซะก่อน)

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

Apple
public://topics-images/apple_webp.png
SCB10X
public://topics-images/347823389_774095087711602_515970870797767330_n_webp.png
Windows 11
public://topics-images/hero-bloom-logo.jpg
Doom
public://topics-images/doom_logo.png
Huawei
public://topics-images/huawei_standard_logo.svg_.png
Threads
public://topics-images/threads-app-logo.svg_.png
Google Keep
public://topics-images/google_keep_2020_logo.svg_.png
Fortnite
public://topics-images/fortnitelogo.svg_.png
Instagram
public://topics-images/instagram_logo_2022.svg_.png
SCB
public://topics-images/9crhwyxv_400x400.jpg
Microsoft
public://topics-images/microsoft_logo.svg_.png
Basecamp
public://topics-images/bwpepdi0_400x400.jpg
Tinder
public://topics-images/hwizi8ny_400x400.jpg
FTC
public://topics-images/seal_of_the_united_states_federal_trade_commission.svg_.png
Pinterest
public://topics-images/pinterest.png
Palantir
public://topics-images/-nzsuc6w_400x400.png
AIS Business
public://topics-images/logo-business-2021-1.png
PostgreSQL
public://topics-images/images.png
JetBrains
public://topics-images/icx8y2ta_400x400.png
Krungthai
public://topics-images/aam1jxs6_400x400.jpg
Palworld
public://topics-images/mccyhcqf_400x400.jpg
Bill Gates
public://topics-images/bill_gates-september_2024.jpg
VMware
public://topics-images/1nj4i1gp_400x400.jpg
Take-Two Interactive
public://topics-images/0khle7nh_400x400.jpg
OpenAI
public://topics-images/ztsar0jw_400x400.jpg
Thailand
public://topics-images/flag_of_thailand.svg_.png
NVIDIA
public://topics-images/srvczsfq_400x400.jpg
ServiceNow
public://topics-images/ytnrfphe_400x400.png
PS5
public://topics-images/playstation_5_logo_and_wordmark.svg_.png
Klarna
public://topics-images/urcllpjp_400x400.png
Google Play
public://topics-images/play.png
Drupal
public://topics-images/drupal.png
Virtua Fighter
public://topics-images/virtua_figther_2024_logo.png
Paradox Interactive
public://topics-images/paradox_interactive_logo.svg_.png
Europa Universalis
public://topics-images/europa-icon.png
Nintendo Switch 2
public://topics-images/mainvisual.png
Cloudflare
public://topics-images/cloudflare_logo.svg_.png
Samsung
public://topics-images/samsung.png
Google
public://topics-images/google_2015_logo.svg_.png
Uber
public://topics-images/uber.png
Microsoft 365
public://topics-images/m365.png
USA
public://topics-images/flag_of_the_united_states.svg_.png
GM
public://topics-images/0pe0po-z_400x400.jpg
Perplexity
public://topics-images/perplex.jpg
Xperia
public://topics-images/xperia.png
iOS 18
public://topics-images/ios-18-num-96x96_2x.png
True
public://topics-images/true_logo.png
SoftBank
public://topics-images/softbank.jpg
Pac-Man
public://topics-images/pacman.png
Harry Potter
public://topics-images/harry.png
Marvel
public://topics-images/marvel.png
Skydance
public://topics-images/skydance.png
SEA
public://topics-images/sealogo.png
Find My Device
public://topics-images/find.png
Gemini
public://topics-images/google_gemini_logo.svg__1.png
Accessibility
public://topics-images/accessibility-128x128_2x.png
Material Design
public://topics-images/m3-favicon-apple-touch.png
Android 16
public://topics-images/android16.png
Android
public://topics-images/android_0.png