หมายเหตุเวอร์ชัน Android 1.1

วันที่: กุมภาพันธ์ 2009
ระดับ API: 2

เอกสารนี้แสดงหมายเหตุเกี่ยวกับเวอร์ชันสำหรับภาพระบบ Android 1.1 ที่รวมอยู่ใน SDK

ภาพรวม

อิมเมจระบบ Android 1.1 ที่ส่งใน SDK เป็นเวอร์ชันการพัฒนา ซึ่งตรงข้ามกับอิมเมจระบบที่ใช้งานจริงของ Android 1.1 ซึ่งใช้สำหรับ โทรศัพท์มือถือที่ใช้ระบบ Android เริ่มตั้งแต่เดือนกุมภาพันธ์ 2009

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

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

หากคุณใช้ภาพระบบ Android 1.1 เพื่อสร้างแอปพลิเคชันที่เข้ากันได้กับอุปกรณ์ที่ใช้ Android ซึ่งทำงานบนแพลตฟอร์ม Android 1.1 คุณต้องต้องตั้งค่าแอตทริบิวต์ android:minSdkVersion เป็น "2" เพื่อระบุว่าแอปพลิเคชันของคุณเข้ากันได้กับอุปกรณ์ที่ใช้ภาพระบบ Android 1.1 (หรือเวอร์ชันที่ใหม่กว่า) เท่านั้น

กล่าวอย่างเจาะจงคือ โปรดระบุandroid:minSdkVersion ในเอลิเมนต์ <uses-sdk> ในฐานะองค์ประกอบย่อยของ <manifest> ในไฟล์ Manifest เมื่อตั้งค่าแล้ว แอตทริบิวต์มีลักษณะดังนี้

<manifest>
  ...
  <uses-sdk android:minSdkVersion="2" />
  ...
</manifest>

การตั้งค่า android:minSdkVersion ด้วยวิธีนี้จะทำให้มั่นใจได้ว่าผู้ใช้จะติดตั้งแอปพลิเคชันของคุณได้ก็ต่อเมื่ออุปกรณ์ใช้แพลตฟอร์ม Android 1.1 เท่านั้น ซึ่งจะช่วยให้มั่นใจได้ว่าแอปพลิเคชันจะทํางานได้อย่างถูกต้องในอุปกรณ์ของผู้ใช้ โดยเฉพาะหากแอปพลิเคชันใช้ API ที่เปิดตัวใน Android 1.1

หากแอปพลิเคชันของคุณใช้ API ที่เปิดตัวใน Android 1.1 แต่ไม่ได้ใช้ ประกาศ <uses-sdk android:minSdkVersion="2" /> จากนั้นจะ ทำงานอย่างถูกต้องบนอุปกรณ์ Android 1.1 แต่ไม่ทำงานบน Android 1.0 อุปกรณ์ ในกรณีหลัง แอปพลิเคชันจะขัดข้องเมื่อรันไทม์เมื่อพยายามใช้ API ของ Android 1.1

หากแอปพลิเคชันของคุณไม่ได้ใช้ API ใหม่ที่เปิดตัวใน Android 1.1 คุณสามารถระบุความเข้ากันได้กับ Android 1.0 ได้โดยนำ android:minSdkVersion ออกหรือตั้งค่าแอตทริบิวต์เป็น "1" อย่างไรก็ตาม ก่อนเผยแพร่แอปพลิเคชัน คุณต้องตรวจสอบว่าได้คอมไพล์แอปพลิเคชันกับอิมเมจระบบ Android 1.0 (มีอยู่ใน SDK ของ Android 1.0) เพื่อให้แน่ใจว่าแอปพลิเคชันจะสร้างและทํางานได้อย่างถูกต้องสําหรับอุปกรณ์ Android 1.0 คุณควรทดสอบแอปพลิเคชันกับระบบ รูปภาพที่สอดคล้องกับระดับ API ที่แอปพลิเคชันออกแบบมา ที่จะเข้ากันได้

หากคุณมั่นใจว่าแอปพลิเคชันของคุณไม่ได้ใช้ API ของ Android 1.1 และ คุณไม่จำเป็นต้องใช้โซลูชันเหล่านี้ คุณอาจพบว่าการทำงานต่อไป Android 1.0 SDK แทนที่จะเปลี่ยนไปใช้ Android 1.1 SDK และมี ในการทดสอบเพิ่มเติม

ไลบรารีภายนอก

รูปภาพระบบมีไลบรารีภายนอกเหล่านี้ ซึ่งคุณเข้าถึงได้จากแอปพลิเคชันโดยการเพิ่ม <uses-library>

  • com.google.android.maps — ให้สิทธิ์แอปพลิเคชันเข้าถึงข้อมูล Google Maps โปรดทราบว่าในการใช้ Google Maps ต้องระบุคีย์ API ของแผนที่

ความเข้ากันได้ของอุปกรณ์

เราได้ทดสอบภาพระบบ Android 1.1 ว่าเข้ากันได้กับอุปกรณ์ที่ทำงานด้วยระบบ Android ต่อไปนี้

  • T-Mobile G1

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

อิมเมจระบบมีแอปพลิเคชันในตัวต่อไปนี้

  • นาฬิกาปลุก
  • การแสดงตัวอย่าง API
  • เบราว์เซอร์
  • เครื่องคิดเลข
  • กล้อง
  • รายชื่อติดต่อ
  • เครื่องมือสำหรับนักพัฒนาเว็บ
  • Dialer
  • อีเมล
  • Maps (และ StreetView)
  • การรับส่งข้อความ
  • เพลง
  • รูปภาพ
  • การตั้งค่า

การแปล UI

อิมเมจระบบมีสตริง UI ที่แปลแล้วสำหรับภาษาที่ระบุไว้ด้านล่าง

  • อังกฤษ สหรัฐอเมริกา (en_US)
  • German (de)

สตริง UI ที่แปลแล้วตรงกับภาษาที่แสดงใน โปรแกรมจำลอง ซึ่งเข้าถึงได้ผ่านแอปพลิเคชันการตั้งค่าอุปกรณ์

ปัญหาที่แก้ไขแล้ว

  • ขณะนี้การแจ้งเตือน นาฬิกาปลุกจะส่งเสียง/สั่นโดยตรง แทนที่จะเล่นผ่าน นาฬิกาปลุก การแจ้งเตือน AlarmClock เริ่มเล่นเสียง/การสั่นใน IntentReceiver แทนที่จะเป็นตอนเริ่มต้นกิจกรรม การเปลี่ยนแปลงเหล่านี้ควรช่วยป้องกันไม่ให้การปลุกถูกบล็อกโดยกล่องโต้ตอบแบบโมดัล
  • การแก้ไขการเข้าสู่โหมดสลีปของอุปกรณ์
  • การแตะเพียงครั้งเดียวจะไม่เปิดแป้นโทรศัพท์ระหว่างการโทรอีกต่อไป ผู้ใช้จะต้องแตะและลากแป้นโทรศัพท์
  • แก้ไขข้อบกพร่องที่เป็นสาเหตุให้มีข้อความขาออกประมาณ 1 ใน 25 ฉบับไปยัง หยุดการเชื่อมต่อ IMAP (ไปยังเซิร์ฟเวอร์ของ Gmail) เมื่อโอน ไปยังโฟลเดอร์ส่งแล้ว
  • ลบรายการการสร้างบัญชีอัตโนมัติที่เสียหายหรือไม่มีประโยชน์ สามารถทดสอบได้ เพิ่มการแก้ไขเล็กๆ น้อยๆ ในรายการที่เหลือ ปรับปรุงกล่องโต้ตอบคำเตือนที่ใช้สำหรับบางกรณีพิเศษ
  • เปลี่ยนช่วงเวลาเริ่มต้นในการตรวจสอบอีเมลเป็นทุก 15 นาที (แทนที่จะเป็น "ไม่เลย")
  • แก้ไขข้อบกพร่องในการอ้างอิงรหัสผ่านใน IMAP เพื่อให้ผู้ใช้ใส่ สัญลักษณ์พิเศษในรหัสผ่าน (เช่น เว้นวรรค)
  • แก้ไขข้อผิดพลาดต่างๆ ในการตั้งค่าบัญชีอัตโนมัติและบัญชีด้วยตนเอง
  • ปรับปรุงการรายงานข้อผิดพลาดในการเชื่อมต่อต่างๆ ซึ่งช่วยให้ผู้ใช้วินิจฉัยการตั้งค่าบัญชีที่ไม่สำเร็จได้ง่ายขึ้น
  • แก้ไขการแจ้งเตือนอีเมลใหม่สำหรับบัญชีแบบ POP3
  • ทำให้มีการตรวจสอบอัตโนมัติอย่างถูกต้องสำหรับบัญชีที่ทำเครื่องหมายว่า "ไม่เคย ตรวจสอบ"
  • ตอนนี้แสดงวันที่และเวลาโดยใช้ค่ากําหนดของผู้ใช้ (เช่น 24 ชั่วโมงเทียบกับ AM/PM)
  • จากนั้นจะแสดงสำเนา: ในมุมมองข้อความ
  • ปรับปรุงการกู้คืนจากการเชื่อมต่อ POP3 ที่ไม่สำเร็จ
  • กฎของโปรแกรมแยกวิเคราะห์ POP3 ถูกยกเลิก ดังนั้นแอปพลิเคชันจึงสามารถทำงานกับ เซิร์ฟเวอร์อีเมลที่ไม่เป็นไปตามนโยบาย

ฟีเจอร์ใหม่

  • Maps: เพิ่มรายละเอียดและรีวิวเมื่อผู้ใช้ทำการค้นหาใน Maps และคลิกธุรกิจเพื่อดูรายละเอียด
  • โปรแกรมโทรออก: ค่าเริ่มต้นของระยะหมดเวลาของหน้าจอขณะโทรที่นานขึ้นเมื่อใช้ ลำโพง
  • แป้นโทรศัพท์: เพิ่ม "แสดงแป้นหมายเลข" / "ซ่อนแป้นหมายเลข" รายการไปยังระหว่างการโทร เพื่อให้ค้นพบแป้นหมายเลข DTMF ได้ง่ายขึ้น
  • เพิ่มการสนับสนุนสำหรับการบันทึกสิ่งที่แนบจาก MMS
  • เพิ่มการสนับสนุนสำหรับตัวอักษรวิ่งในเลย์เอาต์

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

ภาพรวม

  • เพิ่มคำอธิบายประกอบสำหรับระบบทดสอบ ไม่มีการเปลี่ยนแปลง API จริง (ไม่ใช่การทดสอบ)
  • เพิ่มเมธอดเพื่ออนุญาตให้กระบวนการระบุ UID ของกระบวนการได้อย่างง่ายดาย
  • เพิ่มการสนับสนุนสำหรับตัวอักษรวิ่งในเลย์เอาต์
  • เพิ่มวิธีการใหม่ในการกำหนดระยะห่างจากขอบในการแสดงผล มีประโยชน์ในกรณีที่คุณเขียนคลาสย่อยของ View ของคุณเอง
  • เพิ่มสิทธิ์ใหม่ที่อนุญาตให้แอปพลิเคชันประกาศ SMS หรือข้อความพุช WAP
  • การล้างข้อมูล API: นำตัวสร้างที่มีการป้องกันออกจาก อิมเมจระบบที่เชื่อมโยงกับ SDK

รายละเอียดการเปลี่ยนแปลง API

โมดูลหรือฟีเจอร์เปลี่ยนคำอธิบาย
คําอธิบายประกอบสําหรับระบบทดสอบ
เพิ่มคำอธิบายประกอบ LargeTest แล้ว
เพิ่มคำอธิบายประกอบ MediumTest แล้ว
เพิ่มคำอธิบายประกอบ SmallTest แล้ว
อนุญาตให้กระบวนการทราบ UID ได้อย่างง่ายดาย
เพิ่มเมธอดสาธารณะ myUid() ลงในคลาส android.os.Process
Padding ในมุมมอง
เพิ่มเมธอดสาธารณะ getBottomPaddingOffset() ลงในคลาส android.view.View แล้ว
เพิ่มเมธอดสาธารณะ getLeftPaddingOffset() ลงในคลาส android.view.View แล้ว
เพิ่มเมธอดสาธารณะ getRightPaddingOffset() ลงในคลาส android.view.View แล้ว
เพิ่มเมธอดสาธารณะ getTopPaddingOffset() ลงในคลาส android.view.View
เพิ่มเมธอดสาธารณะ isPaddingOffsetRequired() ลงในคลาส android.view.View แล้ว
การรองรับข้อความที่เลื่อน
เพิ่มวิธีสาธารณะ setMarqueeRepeatLimit(int) ในชั้นเรียน TextView แล้ว
เพิ่มช่องสาธารณะ android.R.attr.marqueeRepeatLimit แล้ว
สิทธิ์ใหม่
เพิ่มช่องสาธารณะ android.Manifest.permission.BROADCAST_SMS แล้ว
เพิ่มช่องสาธารณะ android.Manifest.permission.BROADCAST_WAP_PUSH แล้ว
การเก็บกําลัง API
นําตัวสร้างแบบ protected ของ java.net.ServerSocket.ServerSocket(java.net.SocketImpl) ออก