Tags:
Node Thumbnail

ข่าวดีของนักพัฒนาแอพบน Android Market ที่ต้องทำแอพรองรับอุปกรณ์หลายๆ ชนิด ซึ่งในบางกรณีแต่ละรุ่นใช้งานแอพไฟล์เดียวกันไม่ได้ ทำให้ต้องแยกแอพออกเป็นหลายๆ รุ่นตามอุปกรณ์แต่ละตัว (ดูตัวอย่างคีย์บอร์ด TSwipe หรือตัวอย่างที่พบบ่อยคือแยกรุ่นมือถือ-แท็บเล็ต) ซึ่งก็มีข้อเสียคือชวนให้ผู้ใช้สับสนไม่น้อย

ตอนนี้กูเกิลแก้ปัญหานี้แล้ว โดยอนุญาตให้แอพหนึ่งตัว สามารถอัพโหลดไฟล์ APK ขึ้นไปได้หลายไฟล์ตามการใช้งาน จากนั้นตัว Market จะช่วยเลือกไฟล์ที่เหมาะกับอุปกรณ์ของผู้ใช้ให้เอง

คนที่พัฒนาแอพบน Android ก็ตามไปอ่านรายละเอียดวิธีการตั้งค่ากันเองนะครับ

ที่มา - Android Developers Blog

Get latest news from Blognone

Comments

By: kswisit
ContributoriPhoneAndroidIn Love
on 22 July 2011 - 11:37 #313544

เป็นอีกหนึ่งความพยายามแก้ fragmentation

ที่ปลายเหตุน่ะ...แต่ก็ฉลาดดีเนอะ :)


^
^
that's just my two cents.

By: Meow-Meow
ContributoriPhoneWindows PhoneAndroid
on 22 July 2011 - 11:57 #313565 Reply to:313544
Meow-Meow's picture

ถ้าจะแก้ที่ต้นเหตุต้องลดความต่างของอุปกรณ์ลง

แล้วถ้าทำอย่างนั้นก้อจะกลายเปนระบบปิด

และถ้าเปนอย่างนั้นก้อจะไม่ใช่ android ล่ะครับ


Destination host unreachable!!!

By: platalay
iPhoneWindows PhoneAndroidWindows
on 22 July 2011 - 12:25 #313589 Reply to:313565

ผมว่า สิ่งหลักๆก็มีเรื่องความละเอียดจอนั่นแหละ

น่าจะกำหนดมาเลยซัก 4 ขนาด รุ่นเล็ก กลาง ใหญ่ แท็บเลท แล้วกำหนดให้ให้สัดส่วนจอเหมือนกันให้หมด

ทุกวันนี้มันออกมาหลายขนาดเหลือเกิน ขนาดไม่ได้เป็น dev เห็นแล้วยังปวดกระบาลแทนเลย

By: Meow-Meow
ContributoriPhoneWindows PhoneAndroid
on 22 July 2011 - 12:50 #313612 Reply to:313589
Meow-Meow's picture

Google กำหนดขนาดของจอไว้แล้วครับ แบ่งออกเปน รายละเอียดตามนี้ครับ

http://developer.android.com/guide/practices/screens_support.html

แต่ส่วนใหญ่ที่เหนออกกันตอนนี้จะเปน ldpi กับ mdpi กันเสียส่วนใหญ่ xldpi จะเปนพวก tablet ส่วน ldpi จะเปนพวกจอแชท กับพวกความละเอียดต่ำอย่าง SS Galaxy Mini


Destination host unreachable!!!

By: mr_tawan
ContributoriPhoneAndroidWindows
on 22 July 2011 - 14:46 #313646 Reply to:313589
mr_tawan's picture

คือ HW ทุกตัวเป็น Factor หมดเลยครับ ไม่ใช่ความละเอียดหน้าจอ

อย่างใช้ GPU คนละตัวก็จบกันแล้วบางที รันได้บนบางตัว บางตัวเรนเดอร์เพี้ยนซะงั้น

คิดง่าย ๆ ว่าเหมือนบน PC น่ะครับ แค่ไม่หลากหลายเท่า


  • 9tawan.net บล็อกส่วนตัวฮับ
By: TeamKiller
ContributoriPhone
on 22 July 2011 - 15:07 #313658 Reply to:313646
TeamKiller's picture

PC มันมีพวก Direct X เป็นตัวกลางไรแบบนี้เปล่าอะครับ

By: McKay
ContributorAndroidWindowsIn Love
on 22 July 2011 - 20:17 #313757 Reply to:313658
McKay's picture

มีพวก OpenGL ES ครับ


Russia is just nazi who accuse the others for being nazi.
someone once said : ผมก็ด่าของผมอยู่นะ :)

By: touchie
iPhoneWindows PhoneAndroidBlackberry
on 22 July 2011 - 12:09 #313577

ทำเป็นโนเกียไปได้ 555+

By: EThaiZone
ContributorAndroidUbuntuWindows
on 22 July 2011 - 12:24 #313585 Reply to:313577
EThaiZone's picture

Nokia ผมว่า fragmentation น้อยกว่า Android นะ
เพราะอย่างโปรแกรมบน s60v5 มันติดได้ตั้งแต่ 5800 ราคาหลักหมื่น
จน 5233 ราคา 4 พัน ใช้ได้หมด cpu ยังเท่ากันเลย 555+ (ประชด Nokia)

แต่ตัว Ovi มีการตรวจชนิดมือถือ มันเหมือนใช้ตรวจว่าอะไรเป็น s60v5 อะไรเป็น Symbian^3 มากกว่า


มันไม่ง่ายเลยที่จะทำ GIF ให้มีขนาดน้อยกว่า 20kB

By: gudgee
iPhoneAndroidWindows
on 22 July 2011 - 12:20 #313582
gudgee's picture

"เลือกไฟล์ที่เหมาะกับอุปกรณ์ของผู้ใช้ให้เอง"

แจ่ม

By: EngineerRiddick
iPhoneWindows PhoneAndroidUbuntu
on 22 July 2011 - 12:24 #313586
EngineerRiddick's picture

ดี File จะได้ไม่ใหญ่ ทุกวันนี่ต้องทำ Content หลายsizeเหลือเกินเพื่อให้รอบรับทุกๆอุปกรณ์
ดีแล้ว =v=)b
like +1

By: obtheair on 22 July 2011 - 17:10 #313696

ข่าวต่อไป : Google จดสิทธิบัตร Market Store อนุญาตให้รองรับชุด package ของ application ได้หลาย package ต่อ 1 app เพื่อรองรับเครื่องของลูกค้าที่มีสถาปัตยกรรมแตกต่างกัน และเลือก package ที่เหมาะสมกับเครื่องให้โดยอัตโนมัติ

แต่อ้าว Apple ไม่มีความจำเป็นต้องทำหลาย package นี่หว่า

By: gondolaz
AndroidUbuntuWindows
on 24 July 2011 - 10:53 #314275 Reply to:313696
gondolaz's picture

อืม.... แต่ผมว่าจดไว้ก่อนเพื่อกันก็ดีนะ (แต่ต้องประกาศมาเลยนะวาจะไม่เอาไปฟ้อง..)
ไม่งั้นเดี๋ยวพี่ๆ เค้าแอบไปจด แล้วเอามาเล่นอีก!!!

By: myung
iPhoneWindows PhoneAndroid
on 22 July 2011 - 17:32 #313706
myung's picture

ผมคิดว่าเค้าทำแบบนี้ตั้งนานแล้วนะ

เครื่องรุ่นไหนเปิด market เข้าไปจะเจอ app ที่เครื่องตัวเองใช้ได้

ใช้ไม่ได้ก็จะไม่มีทางเปิดเจอ

By: kswisit
ContributoriPhoneAndroidIn Love
on 22 July 2011 - 17:58 #313710 Reply to:313706

ต้องเปิดด้วยสิครับ แล้วค่อยบอกว่าไม่รองรับ

ไม่งั้นผู้ใช้จะงงว่า เข้าจากเครื่องเพื่อนเจอ แต่ทำไมเครื่องตัวเองเข้าแล้วไม่เจอ


^
^
that's just my two cents.

By: lancaster
Contributor
on 23 July 2011 - 00:56 #313865 Reply to:313706

อันนั้นมันดู compat แล้วให้ใช้ได้เฉพาะเครื่องที่ใช้ได้ครับ แต่ข่าวนี้คือจะให้ developer อัพ .apk แยกกันสำหรับแต่ละรุ่นได้เลย

By: earnz
iPhoneAndroidUbuntu
on 22 July 2011 - 18:57 #313739

+1
เหมือนที่เราเคยคิด "จะให้ทำให้รองรับทุกเครื่องนี่ บางทีทำคนละแอพเลยน่าจะง่ายกว่า"

By: jp
iPhoneAndroidBlackberry
on 22 July 2011 - 20:06 #313753

จริงน่าจะเป็นหน้าที่ของ anDROID ตรวจสอบรุ่นซะก่อนแล้วค่อยให้ดาวน์โหลด(สงสัยความคิดติดมาจาก nexus)

หรือว่าแจ้งรุ่นใดใช้ได้บ้าง รุ่นใดอาจใช้ไม่ได้ก็เปิดโอกาสให้คืนเงินแล้วให้ผู้พัฒนาไปปรับปรุงให้รองรับ หากไม่ปรับปรุงให้ใช้งานก็ขึ้นข้อความว่าไม่แนะนำให้ใช้ น่าจะดีกว่านะ

ไม่อย่างนั้น fragmentation เต็มไปหมด

By: mk
FounderAndroid
on 22 July 2011 - 20:53 #313780 Reply to:313753
mk's picture

หรือว่าแจ้งรุ่นใดใช้ได้บ้าง รุ่นใดอาจใช้ไม่ได้ก็เปิดโอกาสให้คืนเงินแล้วให้ผู้พัฒนาไปปรับปรุงให้รองรับ หากไม่ปรับปรุงให้ใช้งานก็ขึ้นข้อความว่าไม่แนะนำให้ใช้ น่าจะดีกว่านะ

มีตั้งนานแล้วครับ

By: jp
iPhoneAndroidBlackberry
on 23 July 2011 - 00:12 #313848 Reply to:313780

ขอบคุณครับ

ฝั่งผู้ให้บริการ (คนขาย App)หรือว่่าฝั่งผู้ใช้บริการ(คนซื้อ App)ครับ หารายละเอียด เช่น System Requirements ไม่เจอ ต้องไป Function ตรงไหนบ้างครับ โดยเฉพาะ Hardware ภายใน และการรองรับ API เห็นมีแต่ Requires Android รุ่น(Version) ไหน

สรุปแล้วคนมีเครื่องแล้วเลือกได้ว่าแค่รองรับ หรือไม่รอง (This app is compatible with your ?) ใช่ไหมครับที่บอก "มีตั้งนานแล้วครับ" แต่ข้อมูลสำหรับคนที่ต้องการใช้ Application ไว้เลือกเครื่องนั้นๆ โดยเฉพาะคนที่ต้องการอัพ(เปลี่ยน หรือซื้อ)เครื่อง ทาง Android Market ไม่เอื้อใช่ไหมครับ หรือว่าต้องไปทำอย่างไรให้แสดงผลออกมาครับ

By: mk
FounderAndroid
on 23 July 2011 - 14:24 #314018 Reply to:313848
mk's picture

ผมพยายามจะตอบแต่อ่านที่คุณเขียนไม่เข้าใจน่ะครับ ขอทวนคำถามใหม่อีกรอบครับ

By: jp
iPhoneAndroidBlackberry
on 23 July 2011 - 20:20 #314069 Reply to:314018

จาก

มีตั้งนานแล้วครับ

เลยถามแบบคิดว่าเข้าใจ

ฝั่งผู้ให้บริการ (คนขาย App)หรือว่่าฝั่งผู้ใช้บริการ(คนซื้อ App)ครับ หารายละเอียด เช่น System Requirements ไม่เจอ ต้องไป Function ตรงไหนบ้างครับ โดยเฉพาะ Hardware ภายใน และการรองรับ API เห็นมีแต่ Requires Android รุ่น(Version) ไหน

แต่คาดว่าไม่เข้าใจ สรุปเพิ่ม(เน้น)ไปด้วยว่า

สรุปแล้วคนมีเครื่องแล้วเลือกได้ว่าแค่รองรับ หรือไม่รอง (This app is compatible with your ?) ใช่ไหมครับที่บอก

เรียงใหม่อีกแบบ และเพิ่มเติมได้ว่า

  • ใน Android Market เป็นข้อความ "This app is compatible with your ?" คนมีเครื่องแล้วเลือกได้ว่าแค่รองรับ หรือไม่รอง(ใช่ไหมครับ)

หมายถึง แสดงเฉพาะข้อความว่ารองรับกับเครื่องที่ใช้งานได้(compatible) หรือไม่(incompatible) เพื่อเป็นการเน้นย้ำความเข้าใจในเบื้องตันว่าตรงกันไหม

และ

แต่ข้อมูลสำหรับคนที่ต้องการใช้ Application ไว้เลือกเครื่องนั้นๆ โดยเฉพาะคนที่ต้องการอัพ(เปลี่ยน หรือซื้อ)เครื่อง ทาง Android Market ไม่เอื้อใช่ไหมครับ หรือว่าต้องไปทำอย่างไรให้แสดงผลออกมาครับ

เรียงใหม่อีกแบบ และเพิ่มเติมได้ว่า

  1. แต่ข้อมูลสำหรับคนที่ต้องการใช้ Application ไว้
  2. เลือกเครื่องนั้นๆ โดยเฉพาะคนที่ต้องการอัพ(เปลี่ยน หรือซื้อ)เครื่อง ทาง Android Market ไม่เอื้อใช่ไหมครับ หรือว่าต้องไปทำอย่างไรให้แสดงผลออกมาครับ

หมายถึง เลือก Appplication ก่อน แล้วเลือกเครื่องใหม่สำหรับกรณีที่ไม่สามารถปรับปรุงให้รองรับ เป็นรายละเอียดที่ต้องการทราบเพิ่มเติมว่าสามารถแสดงรายละเอียดมากกว่า "This app is compatible with your ?" (มีนัยว่ารองรับ)และอีกข้อความ(ที่มีนัยว่าไม่รองรับ) ไหม

เนื่องจาก

  • ถ้าใช้ได้จะแสดงแค่ This app is compatible with your ? ทางด้านซ้าย
  • และ Requires Android ทางด้านขวา

ป.ล. ? คือ ชื่อ Operator และ Model ใดๆ ที่ใช้งานอย่างเดียว ไม่ใช่ที่ Application ใช้งานได้(Compatible List) หรือใช้งานไม่ได้(Incompatible List)

ครับ

By: jp
iPhoneAndroidBlackberry
on 29 July 2011 - 05:45 #315127 Reply to:314069

ขอใช้เป็นพื้นที่เก็บลิงค์ภายนอกนะครับ(เอาไว้ดูกันลืม)

http://www.adobe.com/flashplatform/certified_devices/

https://wiki.mozilla.org/Mobile/Platforms/Android#System_Requirements

By: mk
FounderAndroid
on 28 July 2011 - 22:31 #315748 Reply to:314069
mk's picture

ขอโทษที่ตอบช้า แต่ผมอ่านอันนี้แล้วก็ยังไม่เข้าใจอยู่ดีน่ะครับ

By: jp
iPhoneAndroidBlackberry
on 29 July 2011 - 05:56 #315849 Reply to:315748

เอาเป็นว่า พิมพ์ใหม่เลยดีกว่า

ให้ Android Market แจ้งรุ่นใดใช้ได้บ้าง(แบบเดียวกับลิงค์ภายนอกใน Reply หรืออื่นๆ)แบบ Flash Player กับ Firefox โดยที่ไม่ต้องเข้าไปใน Web ผู้ผลิต Application ต้องจัดการอย่างไร หรือไป Setting(ตั้งค่า) ตรงไหนใน Android Market หรือว่าใน Web ของ Android Market ในมันแสดงออกมาครับ(เพราะฝั่งผู้ซื้อเดิมๆไม่ได้ตั้งค่าอะไร มองเห็นแต่ชื่อเครือข่ายกับรุ่นที่ใช้อยู่เท่านั้น)

By: Meow-Meow
ContributoriPhoneWindows PhoneAndroid
on 22 July 2011 - 22:41 #313829 Reply to:313753
Meow-Meow's picture

เอ่อ ... ใน Engine ของ Market จะแสดง Compatibility กับเครื่องของ User ไว้ด้วยครับ ถ้าไม่ Support กันจะไม่ให้ติดตั้งครับ(นอกเสียจากว่า user จะไปหา apk มาลงเอง


Destination host unreachable!!!

By: jp
iPhoneAndroidBlackberry
on 22 July 2011 - 23:15 #313842 Reply to:313829

ครับ

By: ch.krich
iPhoneWindows PhoneAndroidBlackberry
on 23 July 2011 - 17:48 #314065
ch.krich's picture

การทำ apk แยกกันยากนะครับ สำหรับ java เพราะต้องแยก source ไว้คนละที่กันไม่สามารถใช้ร่วมกันได้เลย เวลาแก้ไข ก็จะกลายเป็นต้องแก้ตามจำนวนที่แยกไว้

เขียนโปรแกรมให้ตรวจสอบรุ่นแล้วแยกใช้ class ของแต่ละรุ่นง่ายกว่าครับ

By: put4558350
ContributorAndroidUbuntuWindows
on 24 July 2011 - 12:43 #314305 Reply to:314065
put4558350's picture

จะได้ไม่มีปัญหาโหลดผิดรุ่น มือถือ / tablet มั่งครับ


samsung ใหญ่แค่ใหน ?
https://youtu.be/6Afpey7Eldo

By: lancaster
Contributor
on 25 July 2011 - 11:45 #314498 Reply to:314065

ผมว่าหลักๆ คงเอาไว้แยก api version ล่ะมั้งครับ ดูจะจำเป็นที่สุดละ