แพลตฟอร์ม Android 1.6

ระดับ API: 4

Android 1.6 เป็นแพลตฟอร์มรุ่นย่อยที่พร้อมใช้งานในโทรศัพท์มือถือที่ใช้ Android ตั้งแต่เดือนตุลาคม 2009 แพลตฟอร์มนี้มีฟีเจอร์ใหม่ๆ สำหรับผู้ใช้และนักพัฒนาแอป รวมถึงการเปลี่ยนแปลงใน API เฟรมเวิร์ก Android

สำหรับนักพัฒนาแอป แพลตฟอร์ม Android 1.6 เวอร์ชันใหม่พร้อมให้ใช้งานเป็นคอมโพเนนต์ที่ดาวน์โหลดได้สำหรับ Android SDK แพลตฟอร์ม Android 1.6 r2 มีไลบรารี Android และอิมเมจระบบที่เป็นไปตามข้อกำหนดอย่างเต็มรูปแบบ รวมถึงชุดสกินโปรแกรมจำลอง แอปพลิเคชันตัวอย่าง และการอัปเดตการพัฒนาเล็กน้อย แพลตฟอร์มที่ดาวน์โหลดได้เป็นไปตามข้อกําหนดอย่างเต็มรูปแบบ (API ระดับ 4) และไม่มีไลบรารีภายนอก

หากต้องการเริ่มต้นพัฒนาหรือทดสอบกับแพลตฟอร์ม Android 1.6 ให้ใช้ Android SDK และเครื่องมือ AVD Manager เพื่อดาวน์โหลดแพลตฟอร์ม Android 1.6 เวอร์ชันล่าสุดลงใน SDK ของ Android 1.6 ขึ้นไป

ไฮไลต์ของแพลตฟอร์ม

ดูรายการฟีเจอร์ใหม่สำหรับผู้ใช้และไฮไลต์ของแพลตฟอร์มได้ที่เอกสารไฮไลต์แพลตฟอร์ม Android 1.6

ระดับ API

แพลตฟอร์ม Android 1.6 มี API เฟรมเวิร์กเวอร์ชันอัปเดต Android 1.6 API ได้รับการกําหนดตัวระบุจำนวนเต็ม 4 ซึ่งจัดเก็บไว้ในระบบ ตัวระบุนี้เรียกว่า "ระดับ API" ซึ่งช่วยให้ระบบสามารถระบุได้อย่างถูกต้องว่าแอปพลิเคชันเข้ากันได้กับระบบหรือไม่ก่อนที่จะติดตั้งแอปพลิเคชัน

หากต้องการใช้ API ที่เปิดตัวใน Android 1.6 ในแอปพลิเคชัน คุณต้องตั้งค่าที่ถูกต้องเป็น "4" ในแอตทริบิวต์ android:minSdkVersion ขององค์ประกอบ <uses-sdk> ในไฟล์ Manifest ของแอปพลิเคชัน

ดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีใช้ระดับ API ได้ในเอกสารระดับ API

การเปลี่ยนแปลง Framework API

ส่วนด้านล่างนี้จะให้ข้อมูลเกี่ยวกับ Application Framework API ที่แพลตฟอร์ม Android 1.6 มีให้

เฟรมเวิร์ก UI

  • คลาสใหม่ใน android.view.animation เพื่อควบคุมลักษณะการทํางานของภาพเคลื่อนไหว
    • AnticipateInterpolator
    • AnticipateOvershootInterpolator
    • BounceInterpolator
    • OvershootInterpolator
  • แอตทริบิวต์ XML ใหม่ android:onClick เพื่อระบุ View.OnClickListener ของ View จากไฟล์เลย์เอาต์
  • การรองรับใหม่สำหรับการจัดการกับความหนาแน่นของหน้าจอที่แตกต่างกัน ข้อมูลความหนาแน่นจะเชื่อมโยงกับบิตแมปและแคนวาสเพื่อทำการแปลงขนาดที่ถูกต้อง เฟรมเวิร์กจะปรับขนาดบิตแมปและแพตช์ 9 รายการโดยอัตโนมัติตามความหนาแน่นที่พบทรัพยากรและความหนาแน่นของหน้าจอ เป็นต้น
  • หากต้องการใช้ API ที่เปิดตัวใน Android 1.6 ในแอปพลิเคชัน คุณต้องตั้งค่าที่เหมาะสมเป็น "4" ในแอตทริบิวต์ขององค์ประกอบ <uses-sdk> ในไฟล์ Manifest ของแอปพลิเคชัน

เฟรมเวิร์กการค้นหา

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

เฟรมเวิร์กการช่วยเหลือพิเศษ

  • แพ็กเกจ android.accessibility ใหม่ที่มีคลาสสําหรับบันทึกเหตุการณ์การช่วยเหลือพิเศษและส่งต่อไปยังตัวแฮนเดิล AccessibilityService
  • AccessibilityServiceแพ็กเกจใหม่ ที่ช่วยให้แอปพลิเคชันติดตามเหตุการณ์ของผู้ใช้และให้ฟีดแบ็กด้วยภาพ เสียง หรือสัมผัสแก่ผู้ใช้

ป้อนท่าทางสัมผัส

  • gesture API ใหม่สำหรับการสร้าง การจดจำ การโหลด และบันทึกท่าทางสัมผัส

การอ่านออกเสียงข้อความ

  • แพ็กเกจ android.speech.tts ใหม่มีคลาสสำหรับสังเคราะห์คำพูดจากข้อความเพื่อเล่นทันทีหรือสร้างไฟล์เสียง

กราฟิก

  • ตอนนี้ชั้นเรียนใน android.graphics รองรับการปรับขนาดสำหรับความหนาแน่นของหน้าจอที่แตกต่างกันแล้ว

โทรศัพท์

  • SmsManager ใหม่และคลาสอื่นๆ สำหรับการส่งและรับข้อความ SMS

ยูทิลิตี

  • ช่อง DisplayMetrics ใหม่สำหรับกำหนดความหนาแน่นของหน้าจออุปกรณ์ปัจจุบัน

องค์ประกอบของไฟล์ Manifest ของ Android

  • องค์ประกอบ <supports-screens> ใหม่ช่วยให้คุณระบุขนาดหน้าจอของอุปกรณ์ที่แอปพลิเคชันของคุณออกแบบและทดสอบให้รองรับได้ โดยที่ "ขนาด" เป็นการรวมความละเอียดและความหนาแน่น หากแอปพลิเคชันของคุณทำงานบนอุปกรณ์ที่ไม่ได้ระบุขนาดหน้าจอไว้ในองค์ประกอบ <supports-screen> ระบบจะแสดงแอปพลิเคชันในโหมดความเข้ากันได้ ซึ่งจะปรับขนาด UI ของแอปพลิเคชันให้เหมาะสมที่สุดเพื่อให้ตรงกับความละเอียดและความหนาแน่นของหน้าจอ

    แอตทริบิวต์ที่ใช้กำหนดการรองรับหน้าจอของแอปพลิเคชันมีดังนี้

    • smallScreen: ค่าบูลีนที่ระบุว่าแอปพลิเคชันออกแบบมาเพื่อทำงานบนอุปกรณ์ที่มีหน้าจอขนาดเล็กหรือไม่ ตัวอย่างเช่น ความละเอียดต่ำ QVGA, ความละเอียดสูง VGA
    • normalScreens: ค่าบูลีนที่ระบุว่าแอปพลิเคชันออกแบบมาเพื่อทำงานบนอุปกรณ์ที่มีหน้าจอปกติหรือไม่ ตัวอย่างเช่น WQVGA ความหนาแน่นต่ำ, HVGA ความหนาแน่นปานกลาง, WVGA ความหนาแน่นสูง
    • largeScreens: ค่าบูลีนที่ระบุว่าแอปพลิเคชันออกแบบมาเพื่อทำงานบนอุปกรณ์ที่มีหน้าจอขนาดใหญ่กว่ามากหรือไม่ เช่น อาจต้องมีความระมัดระวังเป็นพิเศษในแอปพลิเคชันเพื่อใช้พื้นที่หน้าจออย่างเหมาะสม ตัวอย่างเช่น ความหนาแน่นปานกลางของ VGA, ความหนาแน่นปานกลางของ WVGA
    • anyDensity: ค่าบูลีนที่ระบุว่าแอปพลิเคชันรองรับความหนาแน่นของหน้าจอหรือไม่
    • resizable: ค่าบูลีนที่ระบุว่าแอปพลิเคชันจะขยายเลย์เอาต์ให้พอดีกับหน้าจอที่ใหญ่ขึ้นเล็กน้อยได้หรือไม่

  • องค์ประกอบ <uses-feature> ใหม่ช่วยให้แอปพลิเคชันระบุฟีเจอร์ฮาร์ดแวร์ (หรืออื่นๆ) ที่จำเป็นต่อการทำงานตามปกติ เมื่อแอปพลิเคชันระบุฟีเจอร์ดังกล่าว ระบบจะอนุญาตให้ติดตั้งแอปพลิเคชันเฉพาะในอุปกรณ์ที่มีฟีเจอร์ที่จำเป็นเท่านั้น องค์ประกอบรองรับแอตทริบิวต์ต่อไปนี้
    • name: ชื่อฟีเจอร์ที่จําเป็นสําหรับแอปพลิเคชัน ปัจจุบันยอมรับค่า "android.hardware.camera" และ "android.hardware.camera.autofocus" ซึ่งระบุว่าต้องมีกล้องและโฟกัสอัตโนมัติของกล้องตามลำดับ
    • glEsVersion: ระบุเวอร์ชันขั้นต่ำของ OpenGL ES ที่จำเป็น
  • แอตทริบิวต์ใหม่สำหรับองค์ประกอบ <uses-sdk> มีดังนี้
    • targetSdkVersion: ระบุระดับ API ที่แอปพลิเคชันกำหนดเป้าหมาย โค้ดสามารถทำงานในเวอร์ชันเก่าได้ (จนถึง minSdkVersion) แต่ได้รับการทดสอบอย่างชัดเจนให้ทำงานร่วมกับเวอร์ชันที่ระบุไว้ที่นี่ การระบุเวอร์ชันนี้จะช่วยให้แพลตฟอร์มปิดใช้โค้ดความเข้ากันได้ที่ไม่จำเป็น หรือเปิดใช้ฟีเจอร์ใหม่ที่ไม่พร้อมให้บริการในแอปพลิเคชันเวอร์ชันเก่าได้
    • maxSdkVersion: ระบุระดับ API สูงสุดที่แอปพลิเคชันออกแบบมาให้ทำงาน สำคัญ: โปรดอ่านเอกสารประกอบของ <uses-sdk> ก่อนใช้แอตทริบิวต์นี้

สิทธิ์ใหม่

  • CHANGE_WIFI_MULTICAST_STATE: อนุญาตให้แอปพลิเคชันเข้าสู่โหมดมัลติแคสต์ของ Wi-Fi
  • GLOBAL_SEARCH: อนุญาตให้ระบบการค้นหาทั่วโลกเข้าถึงข้อมูลของผู้ให้บริการเนื้อหาที่ระบุ
  • INSTALL_LOCATION_PROVIDER: อนุญาตให้แอปพลิเคชันติดตั้งผู้ให้บริการตำแหน่งลงในเครื่องมือจัดการตำแหน่ง
  • READ_HISTORY_BOOKMARKS: อนุญาตให้แอปพลิเคชันอ่าน (แต่ไม่เขียน) ประวัติการท่องเว็บและบุ๊กมาร์กของผู้ใช้
  • WRITE_HISTORY_BOOKMARKS: อนุญาตให้แอปพลิเคชันเขียน (แต่ไม่อ่าน) ประวัติการท่องเว็บและบุ๊กมาร์กของผู้ใช้
  • WRITE_EXTERNAL_STORAGE: อนุญาตให้แอปพลิเคชันเขียนไปยังที่จัดเก็บข้อมูลภายนอก แอปพลิเคชันที่ใช้ API ระดับ 3 ลงมาจะได้รับสิทธิ์นี้โดยปริยาย (และผู้ใช้จะเห็นสิทธิ์นี้) แอปพลิเคชันที่ใช้ API ระดับ 4 ขึ้นไปต้องขอสิทธิ์นี้อย่างชัดเจน

รายงานความแตกต่างของ API

ดูรายละเอียดการเปลี่ยนแปลง API ใน Android 1.6 (API ระดับ 4) เทียบกับเวอร์ชันก่อนหน้าได้ที่รายงานความแตกต่างของ API

แอปพลิเคชันในตัว

รูปภาพระบบที่รวมอยู่ในแพลตฟอร์มที่ดาวน์โหลดได้จะมีแอปพลิเคชันในตัวต่อไปนี้

  • นาฬิกาปลุก
  • เบราว์เซอร์
  • เครื่องคิดเลข
  • กล้องวิดีโอ
  • กล้อง
  • รายชื่อติดต่อ
  • ภาษาที่กำหนดเอง (แอปของนักพัฒนาแอป)
  • เครื่องมือสำหรับนักพัฒนาซอฟต์แวร์ (แอปสำหรับนักพัฒนาแอป)
  • Dialer
  • อีเมล
  • แกลเลอรี
  • เครื่องมือสร้างท่าทางสัมผัส
  • IME สำหรับการป้อนข้อความภาษาญี่ปุ่น
  • การรับส่งข้อความ
  • เพลง
  • การตั้งค่า
  • Spare Parts (แอปสำหรับนักพัฒนาแอป)

ภาษา

รูปภาพระบบที่รวมอยู่ในแพลตฟอร์มที่ดาวน์โหลดได้จะมีภาษาต่างๆ ในตัว ในบางกรณี สตริงเฉพาะภูมิภาคจะมีให้สำหรับภาษา ในกรณีอื่นๆ ระบบจะใช้ภาษาเวอร์ชันเริ่มต้น ภาษาที่ใช้ได้ในภาพของระบบ Android 1.6 มีดังนี้ (พร้อมตัวบ่งชี้ภาษา language_country/region)

  • จีน (จีน) (zh_CN)
  • จีน (ไต้หวัน) (zh_TW)
  • เช็ก (cs_CZ)
  • ดัตช์, เนเธอร์แลนด์ (nl_NL)
  • ดัตช์, เบลเยียม (nl_BE)
  • อังกฤษ (สหรัฐอเมริกา) (en_US)
  • อังกฤษ (สหราชอาณาจักร) (en_GB)
  • อังกฤษ, แคนาดา (en_CA)
  • อังกฤษ ออสเตรเลีย (en_AU)
  • อังกฤษ (นิวซีแลนด์) (en_NZ)
  • อังกฤษ (สิงคโปร์) (en_SG)
  • ฝรั่งเศส, ฝรั่งเศส (fr_FR)
  • ฝรั่งเศส (เบลเยียม) (fr_BE)
  • ฝรั่งเศส, แคนาดา (fr_CA)
  • ฝรั่งเศส (สวิตเซอร์แลนด์) (fr_CH)
  • เยอรมัน, เยอรมนี (de_DE)
  • เยอรมัน ออสเตรีย (de_AT)
  • เยอรมัน สวิตเซอร์แลนด์ (de_CH)
  • เยอรมัน, ลิกเตนสไตน์ (de_LI)
  • อิตาลี อิตาลี (it_IT)
  • อิตาลี, สวิตเซอร์แลนด์ (it_CH)
  • ญี่ปุ่น (ja_JP)
  • เกาหลี (ko_KR)
  • โปแลนด์ (pl_PL)
  • รัสเซีย (ru_RU)
  • สเปน (es_ES)
  • สตริง UI ที่แปลแล้วจะตรงกับภาษาที่เข้าถึงได้ผ่านการตั้งค่า

    สกินโปรแกรมจำลอง

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

    • QVGA (240x320, ความหนาแน่นต่ำ, หน้าจอขนาดเล็ก)
    • HVGA (320x480 ความหนาแน่นปานกลาง หน้าจอปกติ)
    • WVGA800 (480x800, ความหนาแน่นสูง, หน้าจอปกติ)
    • WVGA854 (480x854 ความหนาแน่นสูง หน้าจอปกติ)

    ดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีพัฒนาแอปพลิเคชันที่แสดงและทํางานได้อย่างถูกต้องในอุปกรณ์ Android ทุกรุ่นได้ที่การรองรับหน้าจอหลายขนาด