Trang này cung cấp thông tin chi tiết về các bản phát hành gói Thư viện hỗ trợ cũ. Cho bản phát hành Thư viện hỗ trợ gần đây nhất, xem phần Gần đây Bản sửa đổi của Thư viện hỗ trợ.
Bản sửa đổi 26.0.0 Beta 2
(Tháng 6 năm 2017)
Xin lưu ý rằng 26.0.0-beta2 là phiên bản phát hành trước. Nền tảng API của công cụ này là có thể thay đổi và không nhất thiết bao gồm các tính năng hoặc bản sửa lỗi từ phiên bản ổn định mới nhất của Thư viện hỗ trợ.
Lưu ý quan trọng: Hiện đã có các thư viện hỗ trợ thông qua kho lưu trữ Maven của Google. Bạn không cần tải ứng dụng hỗ trợ xuống kho lưu trữ của Trình quản lý SDK. Để biết thêm thông tin, hãy xem Thiết lập Thư viện hỗ trợ.
API mới
- Lớp
JobIntentService
mới, để trợ giúp nhà phát triển lên lịch tác vụ theo cách tuân thủ Android O mới giới hạn thực thi trong nền.
Điểm khác biệt về API
Sửa lỗi
- Sự sụt giảm SDK Android O khiến chữ in nghiêng trong TextView bị mất
- Ngoại lệ về con trỏ rỗng khi kết nối với MediaBrowserServiceCompat
- TextInputLayout phải đặt gợi ý đối với onProvideAutofillStructure()
- Tràn ngăn xếp khi sử dụng tính năng tự động định cỡ TextView trên O
Bản sửa đổi 26.0.0 Beta 1
(Tháng 5 năm 2017)
Xin lưu ý rằng 26.0.0-beta1 là phiên bản phát hành trước. Nền tảng API của công cụ này là có thể thay đổi và không nhất thiết bao gồm các tính năng hoặc bản sửa lỗi từ phiên bản ổn định mới nhất của Thư viện hỗ trợ.
Lưu ý quan trọng: Hiện đã có các thư viện hỗ trợ thông qua kho lưu trữ Maven của Google. Bạn không cần tải ứng dụng hỗ trợ xuống kho lưu trữ của Trình quản lý SDK. Để biết thêm thông tin, hãy xem Thiết lập Thư viện hỗ trợ.
Nội dung thay đổi quan trọng:
FragmentActivity.setSupportMediaController()
vàFragmentActivity.getSupportMediaController()
đã bị xóa. Vui lòng sử dụng các phương thứcMediaControllerCompat.setMediaController()
vàMediaControllerCompat.getMediaController()
tĩnh mới.BottomNavigationView
hiện đang gọionNavigationItemReselected()
khi một mục đã chọn được chọn, thay vì gọionNavigationItemSelected()
.- Giờ đây, tất cả thực thể của phương thức
findViewById()
sẽ trả về<T extends View> T
thay vìView
. Sự thay đổi này có những tác động sau:- Điều này có thể khiến mã hiện tại có loại dữ liệu trả về không rõ ràng,
chẳng hạn như nếu có cả
someMethod(View)
vàsomeMethod(TextView)
nhận kết quả của cuộc gọi tớifindViewById()
. - Khi sử dụng ngôn ngữ nguồn Java 8, bạn phải truyền rõ ràng tới
View
khi loại dữ liệu trả về không bị giới hạn (ví dụ:assertNotNull(findViewById(...)).someViewMethod())
- Ghi đè các phương thức
findViewById()
không phải cuối cùng (cho ví dụ:Activity.findViewById()
) sẽ cần trả về đã cập nhật loại.
- Điều này có thể khiến mã hiện tại có loại dữ liệu trả về không rõ ràng,
chẳng hạn như nếu có cả
API mới
-
FragmentManager
vàFragment
cóisStateSaved()
để cho phép truy vấn xem có giao dịch sẽ được cho phép mà không bị mất trạng thái. Điều này đặc biệt hữu ích để kiểm tra khi xử lý sự kiệnonClick()
trước khi thực thi bất kỳ sự kiện nào giao dịch. - Chuyển động theo đường dẫn được hỗ trợ trong
AnimatedVectorDrawableCompat
. Chuyển động theo đường dẫn cho phép một trình tạo ảnh động cho đối tượng thay đổi hai thuộc tính cùng một lúc thời gian tính theo một lộ trình; đường dẫn được chỉ định làandroid:pathData
trong XML của hoạ sĩ diễn hoạt). - Dựa trên kiến thức vật lý
ảnh động:
FlingAnimation
mới hỗ trợ tạo ảnh động bằng vận tốc ban đầu rồi từ từ chậm lại.- Các lớp con của
DynamicAnimation
hỗ trợ tạo ảnh động tuỳ chỉnh cho bất kỳ đối tượng nào. - Cả
SpringAnimation
vàFlingAnimation
đều có thể hiện tạo ảnh động cho giá trị số thực độ chính xác đơn mà không yêu cầuView
hoặcObject
để liên kết với cuộc gọi đó.
Để biết thêm thông tin, hãy xem Ảnh động vào mùa xuân và Ảnh động dạng ngón tay trang xem trước.
-
Phông chữ
có thể hỗ trợ trong XML:
-
ResourcesCompat.getFont
cho phép tải phông chữ các tài nguyên—bao gồm cả XML họ phông chữ—có thể được sử dụng vớiTextView.setTypeface()
- Khi sử dụng AppCompat, TextView hỗ trợ chỉ định tài nguyên phông chữ hoặc
XML của bộ phông chữ qua thuộc tính XML
android:fontFamily
. - Sử dụng bộ phông chữ XML để tạo các bộ phông chữ có kiểu và độ đậm
biến thể. (Nếu bạn sử dụng các lớp thư viện hỗ trợ để thực hiện việc này, hãy sử dụng
thuộc tính
app:
cũng nhưandroid:
thuộc tính khác.)
-
- Có thể tải xuống
phông chữ:
FontsContractCompat
mới cho phép bạn yêu cầu phông chữ từ một trình cung cấp phông chữ thay vì nhóm các phông chữ đó vào ứng dụng của bạn.- Bạn cũng có thể yêu cầu phông chữ trong XML và sử dụng trong bố cục.
-
Khả năng tương thích với biểu tượng cảm xúc
thư viện:
-
EmojiCompat
có thể xử lý mộtCharSequence
nhất định và thêmEmojiSpans
. -
EmojiTextView
và các tiện ích khác để hiển thị biểu tượng cảm xúc. -
FontRequestEmojiCompatConfig
để yêu cầu phông chữ biểu tượng cảm xúc từ trình cung cấp phông chữ.
-
-
Tự động định cỡ
Chế độ xem văn bản:
- Các phương thức mới trong
TextViewCompat
cũng như các thuộc tính XML để kiểm soát quá trình tự động định cỡ trongTextView
.
- Các phương thức mới trong
- Thư giãn các nút điều khiển chế độ phát có hỗ trợ tua:
-
PlaybackTransportRowPresenter
mới kết xuất nội dung phát các nút điều khiển bằng Thanh dịch chuyển.PlaybackTransportControlGlue
mới hoạt động vớiPlaybackTransportRowPresenter
và hỗ trợ tua.- Lớp cơ sở mới
PlaybackSeekDataProvider
dành cho ứng dụng để cung cấp hình thu nhỏ tua tớiPlaybackTransportControlGlue
.
- Lưu trữ dữ liệu lựa chọn ưu tiên:
-
PreferenceDataStore
hiện cho phép bạn triển khai mã của riêng mình bộ nhớ lựa chọn ưu tiên, được thiết lập bằng các phương thức mới trongPreference
vàPreferenceManager
.
-
Vấn đề đã biết
- Tích hợp khả năng tương thích với biểu tượng cảm xúc và phông chữ có thể tải xuống với Google Play Dịch vụ chỉ hoạt động trên Dịch vụ Google Play phiên bản 11 trở lên, hiện có sẵn thông qua Google Play Chương trình beta của Dịch vụ.
Sửa lỗi
-
API
MediaBrowserCompat.search()
không hoạt động (vấn đề về AOSP) 262170) -
ViewCompat.postInvalidateOnAnimation()
gửi ngoại lệ (AOSP) số 80146) -
onActivityCreated()
đã gọi các mảnh trong Hoạt động bị huỷ bỏ -
RecyclerView.isComputingLayout()
sẽ trả về giá trị true trong tìm nạp trước -
Khi quá trình chuyển đổi
Fade
bị gián đoạn và bị đảo ngược,View
bắt đầu tạo ảnh động từ đầu. (Đã chuyển bản sửa lỗi từ Android Framework.) -
Transition.Fade
bỏ qua giá trị alpha ban đầu củaView
(Vấn đề AOSP 221820)
Bản sửa đổi 26.0.0 Alpha 1
(Tháng 3 năm 2017)
Xin lưu ý rằng 26.0.0-alpha1 là phiên bản phát hành trước. Nền tảng API của công cụ này là có thể thay đổi và không nhất thiết bao gồm các tính năng hoặc bản sửa lỗi từ phiên bản ổn định mới nhất của Thư viện hỗ trợ.
Nội dung thay đổi quan trọng:
Lưu ý: Phiên bản SDK tối thiểu đã tăng lên 14. Kết quả là nhiều API chỉ tồn tại đối với API < 14 có khả năng tương thích không được dùng nữa. Các ứng dụng của các API này cần di chuyển sang khung của chúng tương đương như đã nêu trong trang tham khảo cho từng API không dùng nữa.
- Mô-đun support-percent không còn được dùng nữa. Các khách hàng của mô-đun này phải di chuyển sang tiện ích ConstraintLayout mới, được cung cấp dưới dạng một cấu phần phần mềm riêng biệt trong Trình quản lý SDK.
- Mô-đun support-fragment không còn phụ thuộc vào support-media-compat.
API mới
Nhiều lớp, phương thức và hằng số mới được bổ sung để cung cấp tính năng hỗ trợ có khả năng tương thích ngược cho các API nền tảng được thêm vào Bản xem trước O.
IME_FLAG_NO_PERSONALIZED_LEARNING
: IME có thể theo dõi "chưa học được" cờ cho các ứng dụng có chế độ riêng tư, chẳng hạn như trình duyệt. Chiến dịch này tính năng này giúp các IME nắm được liệu một ứng dụng có đang ở chế độ riêng tư hay không. Nhờ đó, chúng tắt chức năng học tập hoặc thích ứng trong khi ứng dụng đang chạy .
Để biết danh sách đầy đủ các thay đổi đối với API từ phiên bản 25.2.0 đến 26.0.0-alpha1, hãy xem API thư viện hỗ trợ báo cáo sự khác biệt.
Sửa lỗi
- Trong một số trường hợp, đơn giản
AutoTransition
ảnh động có thể bị gián đoạn bởi lượt xem "nhảy". (Vấn đề AOSP 221816)
Bản sửa đổi 25.4.0
(Tháng 6 năm 2017)
Lưu ý quan trọng: Hiện đã có các thư viện hỗ trợ thông qua kho lưu trữ Maven của Google. Bạn không cần tải ứng dụng hỗ trợ xuống kho lưu trữ của Trình quản lý SDK. Để biết thêm thông tin, hãy xem Thiết lập Thư viện hỗ trợ.
Nội dung thay đổi quan trọng:
- Không cho phép thực hiện lệnh gọi giao dịch
executePendingTransactions()
,commitNow()
,popBackStackImmediate()
và các lệnh gọi giao dịch tương tự trong khoảng thời gian Trạng thái củaFragmentManager
sẽ thay đổi. Người đăng ký việc thực thi giao dịch không an toàn vàFragmentManager
hiện thực thi việc này trong trạng thái thay đổi. - Cùng với bản phát hành thư viện hỗ trợ này, chúng tôi cũng sẽ phát hành
multidex
phiên bản 1.0.2. Phiên bản này bao gồm các thay đổi quan trọng sau:
- Cho phép đa phương tiện của APK đo lường.
- Ngừng sử dụng MultiDexTestRunner (nên sử dụng AndroidJUnitRunner thay thế).
- Giúp bảo vệ tốt hơn trước một số hoạt động trích xuất tệp lưu trữ không hợp lệ quản lý ứng dụng.
- Khắc phục lỗi có thể khiến các tệp tạm thời bị bỏ qua.
- Giúp cài đặt nhanh hơn khi thực hiện đồng thời quá trình.
- Khắc phục lỗi cài đặt trên API 19 và 20.
API mới và API đã sửa đổi
Tính năng biến hình đường dẫn và nội suy đường dẫn được hỗ trợ trong AnimatedVectorDrawableCompat
. Chuyển đổi đường dẫn
cho phép các hình dạng thay đổi từ một đường dẫn (được chỉ định là
android:valueFrom
) đến một đường dẫn khác (được chỉ định là
android:valueTo
), để cung cấp hình ảnh phức tạp và hấp dẫn
các hiệu ứng. Nội suy đường dẫn cho phép chỉ định bộ nội suy cho AnimatedVectorDrawableCompat
dưới dạng đường dẫn (được chỉ định là android:pathData
trong hàm nội suy
XML).
Điểm khác biệt về API
Vấn đề đã khắc phục
- Ngoại lệ về con trỏ rỗng khi kết nối với MediaBrowserServiceCompat
- MediaBrowserCompat.search() API không hoạt động (vấn đề AOSP 262170)
- Lệnh gọi lại BrowseFragment onItemClicked bị hỏng trong 25.3.0
- NullPointerException trong khi di chuyển lên và xuống trong VerticalGridView trong 25.3.1
- ClassCastException trong SimpleArrayMap.allocArrays()
Bản sửa đổi 25.3.1
(Tháng 3 năm 2017)
Vấn đề đã khắc phục
SwitchCompat
yêu cầu SDK tối thiểu phiên bản 14 trở lên. (Vấn đề AOSP 251302)- Ảnh động dựa trên vật lý
updateListener
bỏ qua khung đầu tiên. - Ảnh động của nhãn
BottomNavigationView
bị hỏng.
Bản sửa đổi 25.3.0
(Tháng 3 năm 2017)
Nội dung thay đổi quan trọng:
Siêu dữ liệu phiên bản của Thư viện hỗ trợ sẽ tự động được thêm vào
AndroidManifest.xml
khi tạo bản dựng từ Gradle, giúp đơn giản hoá
theo dõi các phiên bản trong các bản dựng công khai. Ví dụ:
<meta-data android:name="android.support.VERSION" android:value="25.3.0" />
Ngừng sử dụng
Một số phương thức và lớp không còn được dùng trong bản phát hành này. Những API không dùng nữa này sẽ bị xoá trong phiên bản sắp tới và nhà phát triển nên di chuyển khỏi chúng. Để biết thêm thông tin về cách di chuyển khỏi API cụ thể, hãy tham khảo tài liệu tương ứng.
ExifInterface
- Phương thức boolean
getLatLong(float[])
không được dùng nữa. Thay vào đó, hãy sử dụng phương thức mớigetLatLong()
, Phương thức này không nhận đối số và trả vềdouble[]
. mediacompat
PlaybackStateCompat.Builder.setErrorMessage(CharSequence)
không được dùng nữa. Thay vào đó, hãy sử dụng phương thức mớisetErrorMessage(int, CharSequence)
, được chuyển một mã lỗi và nội dung mô tả tuỳ chọn.EXTRA_SUGGESTION_KEYWORDS
không được dùng nữa. Thay vào đó, hãy sử dụng Chức năng tìm kiếmMediaBrowserCompat
.v7.recyclerview
LinearLayoutManager.getInitialItemPrefetchCount()
đã được đổi tên thànhLinearLayoutManager.getInitialPrefetchItemCount()
. Tên cũ vẫn được hỗ trợ nhưng sẽ bị xoá trong bản phát hành sau này.
API mới và API đã sửa đổi
appcompat-v7
- Phương pháp mới
ActionBarDrawerToggle.setDrawerSlideAnimationEnabled(boolean)
đơn giản hoá việc tắt ảnh động của biểu tượng bật/tắt ngăn điều hướng. customtabs
- Hỗ trợ thêm các kênh tin nhắn. Xem
CustomTabsService.requestPostMessageChannel()
vàCustomTabsService.postMessage()
để biết thông tin chi tiết. dynamic-animation
- Thư viện ảnh động mới dựa trên vật lý cung cấp một bộ API cho tạo ảnh động phản ứng động với hoạt động đầu vào của người dùng.
leanback-v17
- Hỗ trợ thêm nền thị sai. Xem
Parallax
để biết thông tin chi tiết. - Đã thêm
TimePicker
để chọn thời gian trên giao diện TV. mediacompat
- Bổ sung chức năng tìm kiếm. Xem
MediaBrowserCompat.search()
vàMediaBrowserServiceCompat.onSearch()
để biết thông tin chi tiết. - Đã thêm hỗ trợ cho chế độ trộn bài và lặp lại bài hát. Xem
MediaSessionCompat.setRepeatMode()
vàsetShuffleModeEnabled()
để biết thông tin chi tiết.
Vấn đề đã khắc phục
StaggeredGridLayoutManager
némIllegalArgumentException
(Vấn đề AOSP 230295)- Quá trình tìm nạp trước
RecyclerView
không xử lý đúng cáchRecyclerView
được đính kèm nhưng không trên màn hình - Robolectric không nhận dạng được
LinearLayout
- Khi
Activity
bị huỷ,onActivityCreated()
sẽ được gọi không đúng cách cho các mảnh của nó - Hàm khởi tạo
AppCompatImageView
gây raArrayIndexOutOfBoundsException
- Hiệu suất giao diện người dùng kém trong quá trình chuyển đổi hoạt động
Call.Details
Bản sửa đổi 25.2.0
(Tháng 2 năm 2017)
Thay đổi quan trọng
Vấn đề đã khắc phục
- Bản phát hành này khắc phục một vấn đề nghiêm trọng về bộ định tuyến phương tiện, trong đó việc sử dụng A2DP API định tuyến thiết bị và nội dung nghe nhìn có thể khiến thiết bị không phản hồi, yêu cầu khởi động lại.
FragmentManager.FragmentLifecycleCallbacks
lớp hiện tại là tĩnh.
Vấn đề đã khắc phục
- Việc hiển thị một bản trình bày trang trình bày có tính năng phản chiếu màn hình khiến thiết bị ngắt kết nối Wi-Fi
- Nút nội dung đa phương tiện không xử lý đúng cách những ứng dụng đa phương tiện không đăng ký
bản thân họ bằng
setMediaButtonReceiver()
-
Lỗi
VectorDrawable
với tài nguyên chuỗi (vấn đề AOSP 232407) - Gợi ý cho lớp phủ
TextInputLayout
và văn bản nếu văn bản được thiết lập bởi XML (lỗi AOSP 230171) - Rò rỉ bộ nhớ trong
MediaControllerCompat
(vấn đề AOSP) 231441) -
RecyclerViewLayoutTest.triggerFocusSearchInOnRecycledCallback()
lỗi RecyclerView
gặp sự cố khi tái chế phần tử giữ khung hiển thị (vấn đề AOSP 225762)getAllowGeneratedReplies()
trả về giá trị false không chính xác cho các thao tác bên trong mộtWearableExtender
Bản sửa đổi 25.1.1
(Tháng 1 năm 2017)
Lưu ý quan trọng: Có một lỗi đã biết trong android.support.v7.media.MediaRouter
trong bản sửa đổi 25.1.1 và 25.1.0 của Thư viện hỗ trợ. Nếu ứng dụng của bạn sử dụng
MediaRouter
phiên bản 7,
bạn phải cập nhật lên Bản sửa đổi Thư viện hỗ trợ 25.2.0,
để sửa lỗi này.
Thay đổi quan trọng
-
Giờ đây, giao dịch đối với mảnh có thể được tối ưu hoá bên trong và trên nhiều giao dịch. Việc tối ưu hoá hoạt động giao dịch mảnh có thể giúp loại bỏ các thao tác huỷ. Ví dụ: giả sử có hai giao dịch được thực thi cùng nhau, một mục thêm mảnh A và mảnh thứ hai thay thế phân mảnh A bằng phân mảnh B. Trong trường hợp này, thao tác đầu tiên có thể bị huỷ và chỉ thêm mảnh B. Tức là mảnh A có thể không trải qua vòng đời tạo/huỷ.
Một tác dụng phụ của phương pháp tối ưu hoá này là các mảnh có thể có trạng thái thay đổi so với đơn đặt hàng dự kiến. Ví dụ: giả sử một giao dịch thêm mảnh A, thêm mảnh B, rồi thêm mảnh thứ ba Đáp: Khi không tối ưu hoá, phân mảnh B có thể chờ điều đó trong khi đang thực hiện thì mảnh A cũng sẽ tồn tại vì mảnh A sẽ bị xoá sau khi thêm phân mảnh B. Với tính năng tối ưu hoá, phân mảnh B không thể chắc chắn phân mảnh A sẽ tồn tại trong khi B được tạo, vì phân mảnh A việc tạo và huỷ bỏ có thể bị xoá bằng quy trình tối ưu hoá.
Tính năng tối ưu hoá này bị tắt theo mặc định. Để bật tính năng tối ưu hoá, gọi
FragmentTransaction.setAllowOptimization(true)
. - Giờ đây, các mảnh có thể trì hoãn hiệu ứng chuyển đổi và ảnh động cho đến khi
sẵn sàng sử dụng
Fragment.postponeEnterTransition()
vàFragment.startPostponedEnterTransition()
. API này tương tự nhưActivity.postponeEnterTransition()
vàActivity.startPostponedEnterTransition()
được dùng với hiệu ứng Chuyển đổi hoạt động.
Vấn đề đã khắc phục
-
MediaSessionCompatTest
không thành công vớiIllegalArgumentException
-
DetailsFragment.installTitleView()
không được gọi trong 25.1.0 - Giao dịch mảnh giúp khung hiển thị ảo khi thoát (lỗi AOSP 230679)
-
BottomNavigationView
cần giãn cách giữa biểu tượng mục và văn bản (Vấn đề AOSP 230653) PlaybackFragment
mới sẽ thiếu trình nghe đã chọn vàPlaybackSupportFragment
-
Tiêu điểm
TextInputLayout
không thay đổi đúng cách trong trình mô phỏng từ thư viện hỗ trợ phiên bản 25.1.0 (vấn đề AOSP) 230461) - Không thể thay thế trình đơn của
BottomNavigationView
(AOSP) vấn đề 230343) -
RecyclerView
vớiStaggeredGridLayoutManager
sự cố với các mục toàn dải (vấn đề AOSP 230295) - Sự cố trong
MediaSessionCompat
khi đang dùngsetCallback(null)
-
PlaybackGlueHostOld
vàPlaybackSupportGlueHostOld
không thông báo về các lệnh gọi lại khi các thay đổi về hàng phát -
Ví dụ về
PlaybackOverlayFragment
/test
không thể bắt đầu phát -
RecyclerViewFocusRecoveryTest
không thành công trên API 15 - "Ảnh chụp màn hình" hàng được lấy tiêu điểm ở đầu màn hình
-
RecyclerViewLayoutTest.triggerFocusSearchInOnRecycledCallback()
sự cố trên API 15 -
setActions()
trongonSubactionClicked()
bị lỗi -
RecyclerView
gặp sự cố khi tái chế một số phần tử giữ khung hiển thị
Bản sửa đổi 25.1.0
(Tháng 12 năm 2016)
Lưu ý quan trọng: Có một lỗi đã biết trong android.support.v7.media.MediaRouter
trong bản sửa đổi 25.1.1 và 25.1.0 của Thư viện hỗ trợ. Nếu ứng dụng của bạn sử dụng
MediaRouter
phiên bản 7,
bạn phải cập nhật lên Bản sửa đổi Thư viện hỗ trợ 25.2.0,
để sửa lỗi này.
Thay đổi quan trọng
- Ứng dụng của các tiện ích
RecyclerView
lồng nhau (ví dụ: danh sách cuộn theo chiều dọc của danh sách cuộn ngang) có thể nhận được lợi ích đáng kể về hiệu suất bằng cách gợi ý số lượng trình quản lý bố cục của tiện íchRecyclerView
bên trong các mục cần chuẩn bị trước khi cuộn trên màn hình. Gọi điệnLinearLayoutManager.setInitialPrefetchItemCount(N)
, trong đó N là số lượt xem hiển thị của mỗi mục bên trong. Ví dụ: nếu danh sách ngang, bên trong hiển thị tối thiểu 3 chế độ xem mục, bạn có thể cải thiện hiệu suất bằng cách gọiLinearLayoutManager.setInitialPrefetchItemCount(4)
. Đang thực hiện cho phépRecyclerView
tạo mọi thông tin liên quan chế độ xem từ sớm, trong khiRecyclerView
bên ngoài đang cuộn, điều này giúp giảm đáng kể thời gian kết xuất gián đoạn trong cuộn lên. FragmentActivity.setSupportMediaController()
vàFragmentActivity.getSupportMediaController()
không được dùng nữa. Vui lòng sử dụngMediaControllerCompat.setMediaController()
vàMediaControllerCompat.getMediaController()
tĩnh mới .- Khi ứng dụng chỉ định sắc thái màu cho tiện ích thông qua tính năng phủ màu appcompat (ví dụ:
appcompat:buttonTint
), khách hàng chịu trách nhiệm cung cấp tất cả các trạng thái cần thiết (chẳng hạn như "đã tắt", "đã nhấn", v.v.). Đây là phù hợp với cách chỉ định sắc thái màu tiện ích khi sử dụng tính năng phủ màu khung.
API mới và API đã sửa đổi
- Thêm tính năng hỗ trợ ExifInterface thư viện. Thư viện này hỗ trợ tách gói để đọc thông tin Exif từ JPEG và được định dạng thô và cài đặt thông tin Exif trên tệp hình ảnh JPEG.
Snackbar
đã được tái cấu trúc thành cho phép các ứng dụng hiển thị nội dung tuỳ chỉnh.BaseTransientBottomBar
là lớp cơ sở mới hiển thị hành vi trượt và hoạt ảnh chung.- Thêm gói leanback.media mới chứa các lớp trợ giúp để tích hợp trình phát nội dung nghe nhìn vào các ứng dụng Android TV.
- Đã thêm
SeekBarPreference
có bố cục và thuộc tính có thể tuỳ chỉnh cho lựa chọn ưu tiên phiên bản 7 thư viện hỗ trợ. - Đã thêm
ArraySet
lên thư viện hỗ trợ v4. Lớp này tương ứng với khung LớpArraySet
ra mắt với API cấp 23. RecyclerView
mục RecyclerView các cải tiến về tìm nạp trước:- Tìm nạp trước
RecyclerView
được lồng cho phép tìm nạp trước nội dung từRecyclerView
trong mộtRecyclerView
cuộn khác, với API để kiểm soát mức độ đã tìm nạp trước xong: - Thêm các API cho
LayoutManager
tuỳ chỉnh các đối tượng cần triển khai để bật chức năng tìm nạp trước trong khi cuộn và hất - Các cải tiến đối với quá trình tìm nạp trước để chỉ thực hiện nhiều công việc tạo/liên kết như có thể xảy ra trong khoảng thời gian giữa các khung hình
- Tìm nạp trước
Vấn đề đã khắc phục
- Nút bật/tắt chế độ hiển thị mật khẩu không thành công trong các bài kiểm thử khả năng hỗ trợ tiếp cận.
- Appcompat không tuân theo
state_enabled
trên các thiết bị trước L. - Thêm cơ chế khôi phục tiêu điểm vào
RecyclerView
. Thao tác này cũng khắc phục lỗi hỗ trợ v.v. các mảnh bị hỏng tiêu điểm khi sử dụng chế độ điều hướng DPAD, chẳng hạn như trên Android TV thiết bị. - Leanback: BrowseFragment gặp sự cố với tiêu đề bị tắt và bộ chuyển đổi trống.
- Tương thích:
AlertDialog
quá rộng. InputContentInfoCompat
cuộc gọirequestPermission()
khi nào cần gọireleasePermission()
.MediaBrowserCompat
sự cố.- CoordinatorLayout đo lường/bố trí khung hiển thị khi chế độ hiển thị được đặt thành
GONE
. - Không thể phủ màu
AnimatedVectorDrawableCompat
ở cấp độ API dưới 24 - Thư viện Leanback kích hoạt lỗi tìm lỗi mã nguồn giả
- Thư viện Palette (Bảng khung hiển thị) gây ra lỗi kiểm thử ở mọi cấp độ API
RecyclerView
kiểm tra không thành công trên LeanbackRecyclerView
gặp sự cố khi tái chế phần tử giữ khung hiển thị (vấn đề AOSP 225762)Fragment.onDestroy()
không được gọi cho mảnh trong ngăn xếp lui- Màn hình
CollapsingToolbarLayout
đang không được vẽ khi thu gọn CoordinatorLayout.offsetChildByInset()
ném bóngIllegalArgumentException
- Tách ảnh động
RecyclerView
mụcRecyclerView
bên trong, ngăn chặn tương lai tìm nạp trước - Không thể đính kèm
RecyclerView
mục được tìm nạp trước lồng ghép - Tìm nạp trước dữ liệu cho
RecyclerView
được lồng các mục bị loại bỏ trong bố cục đầu tiên - Quá trình tìm nạp trước
RecyclerView
sẽ không thành công nếu hai lần kéo các sự kiện đến cùng vị trí RecyclerView
phải theo suy đoán bố cục trong khi RenderThread đang kết xuất- Tài nguyên màu được định cấu hình ban đêm không phải lúc nào cũng được chuyển đổi thành Đối tượng có thể vẽ xóa hoàn toàn khỏi bộ nhớ đệm của Tài nguyên
FloatingActionButton
: Việc đặt BackgroundTintList theo phương thức lập trình không hoạt động đúng cách (AOSP) vấn đề 227428)TextInputLayout
: Kiểu chữ thì không đang thiết lập cho ErrorView (vấn đề AOSP (Dự án nguồn mở Android) 227803)TextInputLayout
luôn quay lại sử dụng thành màu lỗi sáng dưới API 23 (lỗi AOSP 221992)FloatingActionButton
hiển thị dưới dạng nhấn khi con trỏ rời khỏi
Danh sách đầy đủ các bản sửa lỗi công khai có trên Công cụ theo dõi lỗi AOSP.
Ngừng sử dụng
Một số phương thức và lớp không còn được dùng trong bản phát hành này. Các các API không dùng nữa sẽ bị xoá trong phiên bản sau này và nhà phát triển nên di chuyển khỏi chúng. Để biết thêm thông tin về cách di chuyển khỏi API cụ thể, hãy tham khảo tài liệu tương ứng.
-
android.support.design.widget
-
android.support.v17.leanback.app
BackgroundManager.getDefaultDimLayer()
BackgroundManager.getDimLayer()
BackgroundManager.setDimLayer()
MediaControllerGlue.MediaControllerGlue(Context,PlaybackOverlayFragment,int[])
MediaControllerGlue.MediaControllerGlue(Context,PlaybackOverlayFragment,int[],int[])
PlaybackControlGlue.PlaybackControlGlue(Context,PlaybackOverlayFragment,int[])
PlaybackControlGlue.PlaybackControlGlue(Context,PlaybackOverlayFragment,int[],int[])
PlaybackControlGlue.getFragment()
PlaybackControlGlue.getOnItemViewClickedListener()
PlaybackControlGlue.onRowChanged()
PlaybackControlGlue.pausePlayback()
PlaybackControlGlue.skipToNext()
PlaybackControlGlue.skipToPrevious()
PlaybackControlGlue.startPlayback()
PlaybackControlSupportGlue
PlaybackOverlayFragment
PlaybackOverlaySupportFragment
-
android.support.v17.leanback.widget
-
android.support.v4.app
FragmentActivity.getSupportMediaController()
FragmentActivity.setSupportMediaController()
Bản sửa đổi 25.0.1
(Tháng 11 năm 2016)
Vấn đề đã khắc phục
- Bật/tắt mật khẩu
TextInputLayout
hiện được tắt theo mặc định để tránh ghi đè một cách không cần thiết cuối cùng do nhà phát triển chỉ định. Tính năng này có thể được bật theo cách thủ công qua Thuộc tính XMLpasswordToggleEnabled
. BottomNavigationView
mục hiện tại để khớp với thông số kỹ thuật của Material.RecyclerView
gặp sự cố trong quá trình tìm nạp trước nếu trình quản lý bố cục rỗng.- Độ cao
BottomNavigationView
là hiện đã được đặt đúng cách. (Vấn đề AOSP 226182) BottomNavigationView
gặp sự cố khi thêm các mục trong trình đơn theo phương thức lập trình. (Vấn đề AOSP 225731)- Sửa sang
TextInputLayout
trái+phải phức hợp có thể vẽ. (Vấn đề AOSP 225836) RecyclerView
gặp sự cố khi tái chế phần tử giữ khung hiển thị. (Vấn đề AOSP 225762)- Leanback: TalkBack thường xuyên nói từ "null" ở chế độ xem chia đôi màn hình.
RecyclerView
: Sự cố khi kết xuất trong Android Studio. (Vấn đề AOSP 225753)BottomNavigationView
vẫn đang hiện mục trong trình đơn như được chọn sau khionNavigationItemSelected()
trả về false. (Vấn đề AOSP 225898)- Trình nghe chuyển tiếp sẽ gửi
NoSuchMethodError
. (AOSP) vấn đề 225647) TextInputEditText
không hiển thị các gợi ý trong chế độ trích xuất IME. (Vấn đề AOSP 221880)
Danh sách đầy đủ các bản sửa lỗi công khai có trên Công cụ theo dõi lỗi AOSP.
Bản sửa đổi 25.0.0
(Tháng 10 năm 2016)
Nội dung thay đổi quan trọng:
- Hàm khởi tạo
ContextCompat
đã được được bảo vệ. Bạn không nên tạo thực thể công khai cho lớp này, nhưng có thể được mở rộng bằng các thư viện hỗ trợ nhắm đến các cấp độ API mới hơn. - Đã tạo hàm khởi tạo
ActivityCompat
được bảo vệ. Bạn không nên tạo thực thể công khai cho lớp này, nhưng có thể được mở rộng bằng các thư viện hỗ trợ nhắm đến các cấp độ API mới hơn. - Đã tạo
getReferrer(Activity)
tĩnh. -
Xoá
android.support.design.widget.CoordinatorLayout.Behavior.isDirty(CoordinatorLayout, V)
. Mọi cách triển khai ứng dụng của phương thức này cần được xóa. -
Xoá
android.support.v4.media.session.MediaSessionCompat.obtain(Context, Object)
. Các trường hợp sử dụng nên được thay thế bằng phương thức được đặt tên phù hợpfromMediaSession()
. -
android.support.v4.media.session.MediaSessionCompat.QueueItem.obtain(Object)
đã bị xóa. Nên thay thế cách sử dụng bằng cụm từ thích hợp hơn phương thức được đặt tênMediaSessionCompat.QueueItem#fromQueueItem
. -
Xoá
android.support.v7.widget.Space
. Mức sử dụng phải được thay thế bằngandroid.support.v4.widget.Space
.
API mới
-
android.support.design.widget.BottomNavigationView
lớp triển khai phần dưới cùng điều hướng trong thông số kỹ thuật của Material Design. - Gói
android.support.v13.view.inputmethod
mới bao gồm các lớp để truy cập vào các tính năng củaandroid.view.inputmethod.InputConnection
được giới thiệu sau API cấp 13. -
android.v7.widget.RecyclerView.DividerItemDecoration
lớp cung cấp cách triển khai cơ sở cho các đường phân chia dọc hoặc ngang giữa mục. - Phong cách trang trí mới trong
android.support.v7.app.NotificationCompat
,DecoratedCustomViewStyle
vàDecoratedMediaCustomViewStyle
, đã thêm các lớp học phản chiếu vào API nền tảng 24.
Vấn đề đã khắc phục
Danh sách đầy đủ các bản sửa lỗi công khai có trên Công cụ theo dõi lỗi AOSP.
Bản sửa đổi 24.2.1
Tháng 9 năm 2016
Sửa các vấn đề:
FloatingActionButton
không thể nữa liên kết với phần tử con gián tiếp củaCoordinatorLayout
. (Vấn đề AOSP 220250)- Hình ảnh bên trong
CollapsingToolbarLayout
không điều chỉnh được theo tỷ lệ cùng vớifitsSystemWindows=true
. (Vấn đề AOSP 220389) CoordinatorLayout
sẽ gửiIndexOutOfBoundsException
khiSnackbar
hiển thị và bị đóng. (Vấn đề về AOSP) 220762)- Không phân giải được
TextInputLayout
màu văn bản lỗi. (Vấn đề AOSP 220305) BatchedCallback.onMoved()
gọiBatchedCallback.onInserted()
. (Vấn đề AOSP 220309)TextInputLayout
ghi đè bên phải đối tượng có thể vẽ phức hợp. (Vấn đề AOSP 220728)
Danh sách đầy đủ các bản sửa lỗi công khai có trên Công cụ theo dõi lỗi AOSP.
Bản sửa đổi 24.2.0
Tháng 8 năm 2016
Bản phát hành 24.2.0 có các thay đổi sau:
- Phân tách Thư viện hỗ trợ phiên bản 4
- Các bản cập nhật API
- Thay đổi về hành vi
- Ngừng sử dụng
- Sửa lỗi
Lưu ý: Bản phát hành 24.2.0 ngừng hỗ trợ Android 2.2 (API cấp 8) trở xuống. Các lớp và phương thức chỉ tồn tại để Các phiên bản hệ thống đó hiện được đánh dấu là không được dùng nữa và sẽ không được phép hiển thị nữa để sử dụng. Các lớp và phương thức không dùng nữa có thể bị xoá trong tương lai bản phát hành.
Phân tách Thư viện hỗ trợ phiên bản 4
Với bản phát hành này, Thư viện hỗ trợ phiên bản 4 đã đã được chia thành nhiều mô-đun nhỏ hơn:
-
support-compat
-
Cung cấp trình bao bọc khả năng tương thích cho các API khung mới, chẳng hạn như
Context.getDrawable()
vàView.performAccessibilityAction()
. -
support-core-utils
-
Cung cấp một số lớp tiện ích, chẳng hạn như
AsyncTaskLoader
vàPermissionChecker
. -
support-core-ui
-
Triển khai nhiều thành phần liên quan đến giao diện người dùng, chẳng hạn như
ViewPager
,NestedScrollView
vàExploreByTouchHelper
. -
support-media-compat
-
Điều chỉnh cho phiên bản cũ các phần của khung media
bao gồm
MediaBrowser
vàMediaSession
. -
support-fragment
-
Điều chỉnh cho phiên bản cũ mảnh
khung. Mô-đun này có các phần phụ thuộc trên
support-compat
,support-core-utils
,support-core-ui
vàsupport-media-compat
.
Để có khả năng tương thích ngược, nếu bạn liệt kê support-v4
trong
Tập lệnh Gradle, APK của bạn sẽ bao gồm tất cả các mô-đun này. Tuy nhiên, để giảm
Kích thước APK, bạn chỉ nên liệt kê các mô-đun cụ thể mà ứng dụng của bạn cần.
Các bản cập nhật API
- Ứng dụng sử dụng Thẻ tuỳ chỉnh có thể
kiểm soát xem Ứng dụng tức thì có mở hay không. (Lưu ý rằng Ứng dụng tức thì vẫn chưa
có thể sử dụng rộng rãi). Để bật hoặc tắt Ứng dụng tức thì, hãy gọi
CustomTabsIntent.Builder.setInstantAppsEnabled()
hoặc chỉ địnhEXTRA_ENABLE_INSTANT_APPS
. Theo mặc định, Thẻ tuỳ chỉnh sẽ bật Ứng dụng tức thì theo mặc định khi tính năng đó khả dụng. TextInputLayout
thêm hỗ trợ cho bật/tắt chế độ hiển thị mật khẩu trong phần thông số kỹ thuật của Material Design.android.support.transition
mới điều chỉnh cho phiên bản cũ của gói khung Transitions sang API cấp 14 và cao hơn. Để biết thêm thông tin, hãy xem tài liệu tham khảo vềandroid.support.transition
.- Thư viện hỗ trợ Thẻ tuỳ chỉnh
sẽ thêm tính năng hỗ trợ cho việc sử dụng
RemoteViews
trong lớp phụ thanh công cụ.setToolbarItem()
hiện có hiện không được dùng nữa. AppCompatResources
sẽ thêm khả năng tải một<vector>
(trên API cấp 9 trở lên) hoặc<animated-vector>
(ở API cấp 11 trở lên) trong một mã nhận dạng tài nguyên bằng phương thứcgetDrawable()
mới.CoordinatorLayout
hiện hỗ trợ xác định các khung hiển thị lồng ghép và chỉ định rằng các khung hiển thị khác nên tránh phần lồng ghép lượt xem. Điều này cho phép ứng dụng sao chép mẫu hành vi tương tự như cáchFloatingActionButton
di chuyển ra khỏi củaSnackbar
, nhưng với bất kỳ chế độ xem con tuỳ ý. Để biết thêm thông tin, hãy xemLayoutParams.insetEdge
và Tài liệu tham khảo vềLayoutParams.dodgeInsetEdges
.- Lớp
DiffUtil
mới có thể tính sự khác biệt giữa hai tập hợp và có thể gửi danh sách hoạt động cập nhật phù hợp được tiêu thụ bởiRecyclerView.Adapter
. -
RecyclerView.OnFlingListener
đã được thêm để hỗ trợ tuỳ chỉnh để phản hồi cử chỉ hất.SnapHelper
lớp này cung cấp cách triển khai riêng để chụp nhanh các khung hiển thị con, vàLinearSnapHelper
lớp sẽ mở rộng cách triển khai này để cung cấp tính năng chụp nhanh căn giữa tương tự nhưViewPager
. - Thư viện Thẻ tuỳ chỉnh hiện cho phép khách hàng yêu cầu tài liệu chuẩn
giao diện người dùng của trình duyệt, thay vì giao diện người dùng thẻ tuỳ chỉnh, bằng cách gọi
CustomTabsIntent.setAlwaysUseBrowserUI()
. Hành vi này hữu ích trong trường hợp trình duyệt mặc định là giao diện người dùng thẻ tuỳ chỉnh nhưng người dùng đã bày tỏ sự ưu tiên đối với giao diện người dùng của trình duyệt chuẩn.
Thay đổi về hành vi
- Nếu bạn sử dụng chức năng ngày/đêm của thư viện appcompat, hệ thống
giờ đây sẽ tự động tạo lại hoạt động của bạn mỗi khi chế độ ngày/đêm thay đổi
(do thời gian trong ngày hoặc do bạn đã gọi đến
AppCompatDelegate.setLocalNightMode()
). Snackbar
hiện đang xếp sau thanh điều hướng nếu thanh trạng thái trong suốt.
Thư viện MediaRouter
Các thiết bị Bluetooth không còn được liệt kê là tuyến nội dung nghe nhìn nữa. Đang định tuyến âm thanh tới Giờ đây, bạn có thể kiểm soát hoàn toàn thiết bị Bluetooth ở cấp hệ thống Android.
Ngừng sử dụng
Các lớp và phương thức không dùng nữa có thể sẽ bị xoá trong bản phát hành sau này. Bạn nên di chuyển khỏi các API này càng sớm càng tốt.
- Một số phương thức cho các lớp sau chỉ bắt buộc đối với API 8 và
thấp hơn và không nên sử dụng nữa. Thay vào đó, hãy dùng khung này
thực tế.
android.support.v4.view.KeyEventCompat
: Thay thế bằngKeyEvent
android.support.v4.view.MotionEventCompat
: Sử dụngMotionEvent
android.support.v4.view.ViewCompat
: Sử dụngView
android.support.v4.view.ViewConfigurationCompat
: Sử dụngViewConfiguration
-
AccessibilityServiceInfoCompat.getDescription()
đã bị ngừng sử dụng, thay vào đó làAccessibilityServiceInfoCompat.loadDescription()
, để trả về thông tin mô tả được bản địa hoá chính xác. - Bạn không nên tạo thực thể cho lớp
ActivityCompat
trực tiếp. Phương thứcgetReferrer(Activity)
không tĩnh sẽ là không áp dụng trong bản phát hành sắp tới. CoordinatorLayout.Behavior.isDirty()
đã ngừng hoạt động và không còn được dùng nữa doCoordinatorLayout
gọi. Bất kỳ hạng nào các hoạt động triển khai, cũng như mọi lệnh gọi đến phương thức này, đều phải được xoá.- Ngừng sử dụng và thay thế
MediaSessionCompat.obtain()
bằng phương thức được đặt tên phù hợp hơnfromMediaSession()
- Ngừng sử dụng
MediaSessionCompat.QueueItem.obtain()
và thay thế bằng phương thức có tên phù hợp hơnfromQueueItem()
- Một số lớp trừu tượng đã không còn được dùng nữa và được thay thế bằng
giao diện phản ánh chính xác hơn các tương đương khung.
AccessibilityStateChangeListenerCompat
đã được thay thế bởiAccessibilityManagerCompat.AccessibilityStateChangeListener
.OnCloseListenerCompat
có đã được thay thế bằng giao diệnSearchViewCompat.OnCloseListener
.OnQueryTextListenerCompat
đã được thay thế bằngSearchViewCompat.OnQueryTextListener
.
- Ngừng sử dụng
CustomTabsSession.setToolbarItem()
và thay thế bằng Dựa trên Chế độ xem từ xasetSecondaryToolbarViews()
.
Sửa lỗi
Các sự cố đã biết sau đây đã được khắc phục trong bản phát hành 24.2.0:
- Đảm bảo chỉ báo
SwipeRefreshLayout
được hiển thị khisetRefreshing(true)
được gọi trước lượt đo lường đầu tiên (AOSP (Dự án nguồn mở Android) vấn đề 77712) - Ngăn
TabLayout
nhấp nháy khi thay đổi trang (AOSP (Dự án nguồn mở Android) vấn đề 180454) - Tránh
ClassNotFoundException
khi không có dữ liệuSavedState
trên API cấp 11 trở xuống (vấn đề AOSP) 196430)
Danh sách đầy đủ các bản sửa lỗi công khai có trên Công cụ theo dõi lỗi AOSP.
Bản sửa đổi 24.1.1
Tháng 7 năm 2016
Sửa các vấn đề:
- Khắc phục một vấn đề trong bản phát hành 24.1.0 ảnh hưởng đến mã nhận dạng tài nguyên được chia sẻ giữa các thư viện hỗ trợ. Vấn đề này khiến các ứng dụng phụ thuộc vào hỗ trợ các thư viện bằng các tài nguyên (chẳng hạn như thiết kế và khả năng tương thích với ứng dụng) để gặp phải vấn đề do mã nhận dạng tài nguyên không khớp.
Bản sửa đổi 24.1.0
Tháng 7 năm 2016
- Các thay đổi đối với Hỗ trợ phiên bản 4 Thư viện:
-
NotificationCompat.Action.WearableExtender
cógetHintDisplayActionInline()
mới và Phương thứcsetHintDisplayActionInline()
để tương thích với Bản xem trước Android Wear 2.0. Các phương thức này cho phép ứng dụng chỉ định rằng một hành động hiển thị cùng dòng với thông báo.- Việc gọi
Fragment.setUserVisbileHint()
sẽ không còn khiến mảnh trở thành bắt đầu nếu gợi ý đã được thêm vàoFragmentTransaction
chưa được xác nhận. Chiến dịch này ảnh hưởng đến người dùngFragmentPagerAdapter
ghi đèsetUserVisbileHint()
và giả định trạng thái vòng đời cụ thể của mảnh sau khi gọisuper.setUserVisibleHint()
. Để biết thêm thông tin, hãy xem trang tham khảo để biết tài liệu choFragment.setUserVisbileHint()
.
Sửa các vấn đề:
- TabLayout.setCustomView(null) dẫn đến NullPointerException (AOSP (Dự án nguồn mở Android) vấn đề 214753)
- TabLayout đánh dấu không chính xác các thẻ tuỳ chỉnh (Vấn đề AOSP (Dự án nguồn mở Android) 214316)
- AppCompatTextHelper sử dụng mảng thuộc tính được sắp xếp không chính xác (lỗi AOSP 214366)
- Không thể tham chiếu VectorDrawable từ XML vùng chứa có thể vẽ khi sử dụng tuỳ chỉnh ContextWrapper (vấn đề AOSP (Dự án nguồn mở Android) 214055)
- ViewDragHelper.saveLastMotion() gửi ArrayIndexOutOfBoundsException (AOSP (Dự án nguồn mở Android) vấn đề 212945)
- BottomSheetBehavior mở rộng thành chiều cao nội dung cũ khi sử dụng setState(STATE_EXPANDED) (Vấn đề về AOSP) 213660)
- CollapsingToolbarLayout không xử lý những phần tử con có thể ghim ở trên cùng hoặc lề dưới (vấn đề về AOSP) 213001)
- Tiêu đề duyệt qua Leanback không hỗ trợ căn chỉnh RTL (vấn đề về AOSP) 213461)
- PagerTabStrip biến mất do thiếu chú thích kế thừa (vấn đề AOSP) 213359)
- Liên kết dữ liệu gửi NullPointerException khi sử dụng Boolean để đặt cờ có điều kiện (vấn đề về AOSP) 191841)
- CoordinatorLayout không phản hồi với setFitsSystemWindows() (vấn đề AOSP) 212720)
- BottomSheetBehavior gặp sự cố khi đặt trạng thái ban đầu (vấn đề AOSP) 203114)
- ViewPager bỏ qua các trang nếu chỉ mục trang có giá trị lớn (vấn đề AOSP) 211734)
- BottomSheetBehavior không hoạt động với bố cục động (vấn đề AOSP) 205226)
Bản sửa đổi 24.0.0
Tháng 6 năm 2016
- Các thay đổi đối với Hỗ trợ phiên bản 4 Thư viện:
-
- Đã thêm vào
Fragment.commitNow()
cho cam kết đồng bộ - Đã thêm vào
NotificationCompat.MessagingStyle
cho các cuộc trò chuyện nhiều bên - Đã thêm vào
NotificationManagerCompat.areNotificationsEnabled()
vàgetImportance()
MediaSessionCompat
nay phản ánh chức năng củaMediaSession
và không tự động gọisetMediaButtonReceiver()
nữa
Lưu ý: Chỉ có
MediaBrowserServiceCompat
trong phiên bản 24.0.0 mới là tương thích chuyển tiếp với các phiên bản Android trong tương lai (ngoài API 24). Nếu bạn đang sử dụng các phiên bản trước, hãy cập nhật lên phiên bản này để đảm bảo khả năng tương thích. - Đã thêm vào
- Các thay đổi cho phiên bản 7 thư viện appcompat:
-
- Hỗ trợ thêm tính năng tham chiếu các đối tượng
ColorStateList
theo chủ đề từ XML
- Hỗ trợ thêm tính năng tham chiếu các đối tượng
- Các thay đổi đối với dịch vụ Hỗ trợ thiết kế Thư viện:
-
- Các điểm cải tiến đối với
AppBarLayout
xử lý độ cao bằngStateListAnimator
- Các điểm cải tiến đối với
- Các thay đổi đối với thư viện Leanback phiên bản 17:
-
- Thêm
OnboardingFragment
để cung cấp lựa chọn chào mừng trong lần chạy đầu tiên và quy trình thiết lập
- Thêm
- Các thay đổi đối với thẻ tuỳ chỉnh:
-
- Thêm tính năng hỗ trợ để cung cấp
RemoteViews
hệ thống phân cấp của thanh công cụ phụ - Đã thêm vào
CustomTabsClient.connectAndInitialize()
để khởi động một dòng
- Thêm tính năng hỗ trợ để cung cấp
Bản sửa đổi 23.4.0
Tháng 5 năm 2016
- Các thay đổi đối với Hỗ trợ phiên bản 4 Thư viện:
-
- Khắc phục vấn đề thêm các mảnh theo thứ tự không chính xác. (Vấn đề 206901)
- Khắc phục vấn đề không vẽ được thanh ứng dụng sau khi cuộn ngoài màn hình. (Vấn đề 178037)
- Các thay đổi cho phiên bản 7 thư viện appcompat:
-
- Đã thêm
AppCompatDelegate.setCompatVectorFromResourcesEnabled()
phương thức để cho phép lại việc sử dụng các vectơ vẽ được trong các đối tượngDrawableContainer
trên thiết bị chạy Android 4.4 (API cấp 19) trở xuống. Xem AppCompat phiên bản 23.2 — Độ tuổi của vectơ để biết biết thêm thông tin. - Khắc phục vấn đề trong API 23 với
AppCompatDelegate.setDefaultNightMode()
không hợp lệ tải tài nguyên chính xác trong API cấp 23. (Vấn đề 206573) - Khắc phục vấn đề có thể gây ra lỗi
NullPointerException
. (Vấn đề 207638)
- Đã thêm
- Các thay đổi đối với dịch vụ Hỗ trợ thiết kế Thư viện:
-
- Khắc phục vấn đề
TextInputLayout
không xoá lỗi phủ màu sausetErrorEnabled(false)
trên API cấp 21 – 22 (Vấn đề 202829) - Khắc phục sự cố
FloatingActionButton
không trả về khi ảnh động bị tắt. (Vấn đề 206416) - Đã khắc phục vấn đề trong
AppBarLayout
chức năng chụp nhanh khi được sử dụng cùng với cờ cuộn
. (Vấn đề 207398)scroll
|enterAlways
|enterAlwaysCollapsed
|snap
- Khắc phục vấn đề
- Các thay đổi đối với thư viện Vectơ vẽ được:
-
- Khắc phục lỗi
VectorDrawableCompat
thực hiện không hiển thị chính xác trongTextView
trên API cấp 23. (Vấn đề 206227)
- Khắc phục lỗi
Bản sửa đổi 23.3.0
Tháng 4 2016
- Các thay đổi đối với Hỗ trợ phiên bản 4 Thư viện:
-
- Đã thêm
AppLaunchChecker
để giúp theo dõi hiệu quả hoạt động của ứng dụng đã được người dùng khởi chạy trước đây.hasStartedFromLauncher()
cho bạn biết liệu người dùng có đã khởi chạy ứng dụng của mình từ màn hình chính trước đó hoặc nếu ứng dụng chỉ được bắt đầu bằng cách khác (ví dụ: để xem trang web cụ thể URL). - Đã khắc phục sự cố rò rỉ bộ nhớ trong
MediaBrowserServiceCompat.mConnections
. (Vấn đề 205220) - Khắc phục vấn đề liên quan đến
ViewPager
không tính đến lề trang khi lật trang. (Vấn đề 203816) Fragment.onRequestPermissionsResult()
hiện đã được giao cho trẻ mảnh.
- Đã thêm
- Các thay đổi cho phiên bản 7 thư viện appcompat:
-
- Khắc phục một vấn đề trong
AppCompatSpinner
có thể khiến nhiều cửa sổ bật lên xuất hiện. (Vấn đề 205052) - Khắc phục vấn đề về cách tô màu của các nút không đường viền. (Vấn đề 202967)
- Khắc phục vấn đề về khả năng tương thích giữa
AppCompatDialogFragment
vàAlertDialog
. (Vấn đề 204805) - Đã hoàn nguyên các thay đổi đối với
TintResources
gây ra các vấn đề về bộ nhớ và cấu hình. (Vấn đề 205236)
- Khắc phục một vấn đề trong
- Các thay đổi cho phiên bản 7 thư viện mediarouter:
-
- Khắc phục
MediaRouteControllerDialog
hành vi của thanh trượt âm lượng. (Vấn đề 202299)
- Khắc phục
- Các thay đổi đối với Lựa chọn ưu tiên phiên bản 7 thư viện:
-
- Khắc phục vấn đề
PreferenceFragmentCompat
gặp sự cố nếu bạn chỉ địnhdividerHeight
. (Vấn đề 204778)
- Khắc phục vấn đề
- Các thay đổi cho phiên bản 7 thư viện recyclerview:
-
- Khắc phục lỗi
RecyclerView
không gọi thao tác cuộn nếu phạm vi các mục hiển thị bị thu hẹp. (Vấn đề 200987) - Khắc phục lỗi
RecyclerView
bị treo nếu nằm trong bố cục tuyến tính, có trọng số và chứa hình ảnh. (Vấn đề 203276) - Khắc phục sự cố trong
OrientationHelper.getStartAfterPadding()
. (Vấn đề 180521) - Khắc phục sự cố khi sử dụng
android:nestedScrollingEnabled
. (Vấn đề 197932)
- Khắc phục lỗi
- Các thay đổi đối với dịch vụ Hỗ trợ thiết kế Thư viện:
-
- Khắc phục lỗi bảng dưới cùng ẩn sẽ xử lý thao tác chạm các sự kiện. (Vấn đề 203654)
- Khắc phục vấn đề về bố cục với
BottomSheetBehavior
khifitsSystemWindows
là đúng. (Vấn đề 203057) - Khắc phục vấn đề hỗ trợ tiếp cận với
Snackbar
. (Vấn đề 182145) - Đã khắc phục sự cố trên
Snackbar
vuốt. (Vấn đề 203924) - Đã sửa lỗi trong
AppBarLayout
bằngenterAlways
(Vấn đề 203661) - Khắc phục lỗi
TextInputLayout
xoá một cách không cần thiết Bộ lọc màu nền của đối tượngEditText
. (Vấn đề 203357)
Bản sửa đổi 23.2.1
Tháng 3 2016
- Các thay đổi đối với Hỗ trợ phiên bản 4 Thư viện:
-
- Khắc phục một ngoại lệ trong
DrawableCompat.wrap()
vàLayerDrawable
trên API cấp 17 đến 19. (Vấn đề 201817) - Khắc phục lỗi
ArrayIndexOutOfBoundsException
trongViewDragHelper.shouldInterceptTouchEvent()
. (Vấn đề 182262) - Đã khắc phục lỗi trong
ViewPager
liên quan đến tính toán thao tác cuộn đối với các thay đổi về kích thước. - Sửa
NullPointerException
khiDrawerLayout.removeDrawerListener()
được gọi mà không cóDrawerLayout.DrawerListener
đã đặt. (Vấn đề 202478) - Khắc phục lỗi không đặt
ViewPager
Tham sốAccessibilityEvent
đúng cách khi cuộn. - Khắc phục vấn đề gây ra độ trễ trong quá trình xoay thiết bị khi sử dụng
Drawable.wrap()
. (Vấn đề năm 201924)
- Khắc phục một ngoại lệ trong
- Các thay đổi cho phiên bản 7 thư viện appcompat:
-
- Huỷ bỏ phần phụ thuộc đối với thành phần vectơ để các nhà phát triển đang sử dụng
tương thích với ứng dụng
thư viện không bắt buộc phải sử dụng
VectorDrawable
và các cờ bản dựng liên kết. - Khắc phục vấn đề về khả năng tương thích với Chế độ ban đêm và API cấp 23. (Vấn đề 201910)
- Khắc phục vấn đề về khả năng tương thích với
SwitchCompat
và API cấp 7. (Vấn đề 201942) - Khắc phục vấn đề truyền giá trị cấu hình trong các đối tượng Tài nguyên Lỗi 201928
- Khắc phục vấn đề về khả năng tương thích, trong đó
android.support.v7.app.NotificationCompat.MediaStyle
nút huỷ bị ẩn ở cấp độ API 21 trở xuống. (Vấn đề 202156) - Khắc phục sự cố về khả năng tương thích với
AppCompatSpinner
trên API cấp 21 trở xuống. (Vấn đề 202246) - Khắc phục vấn đề về việc kiểu
app:textAllCaps = "false"
không cơ quan. (Vấn đề 202117) - Khắc phục sự cố khi khôi phục
SearchView
. (Vấn đề 201836) - Khắc phục tình trạng rò rỉ bộ nhớ xảy ra khi phủ màu tài nguyên có thể vẽ bằng cách sử dụng AppCompat. (Vấn đề 202379)
- Khắc phục vấn đề với
KeyEvent
ở API cấp 11 và thấp hơn. (Vấn đề 202939)
- Huỷ bỏ phần phụ thuộc đối với thành phần vectơ để các nhà phát triển đang sử dụng
tương thích với ứng dụng
thư viện không bắt buộc phải sử dụng
- Các thay đổi cho chế độ xem thẻ v7 thư viện:
-
- Thêm tính năng hỗ trợ Chế độ ban đêm cho
CardView
. (Vấn đề 194497)
- Thêm tính năng hỗ trợ Chế độ ban đêm cho
- Các thay đổi cho phiên bản 7 thư viện recyclerview:
-
- Đã khắc phục lỗi liên quan đến nhiều phương pháp đo lường thông số kỹ thuật. (Vấn đề 201856)
- Giảm khoảng thời gian khoá mà
RecyclerView
không cho phép bộ chuyển đổi thay đổi trong khi tính toán bố cục hoặc thao tác cuộn. (Vấn đề 202046) - Khắc phục sự cố khi gọi
notifyItemChanged()
trên một mục nằm ngoài khung hiển thị. (Vấn đề 202136) - Khắc phục sự cố xảy ra khi
RecyclerView.LayoutManager
thêm và xoá một thành phần hiển thị trong cùng một thành phần hiển thị thẻ đo lường. (Vấn đề 193958)
- Các thay đổi cho phiên bản 7 thư viện mediarouter:
-
- Khắc phục sự cố xảy ra khi gọi
MediaRouter.getInstance()
trên API cấp 17. (Vấn đề 180654)
- Khắc phục sự cố xảy ra khi gọi
- Các thay đổi cho phiên bản 17 Thư viện Leanback:
-
- Khắc phục một vấn đề với
GridLayout.onAddFocusables()
khiến bạn chọn sai mục. - Khắc phục vấn đề với hành động
GuidedStepFragment
biến mất sau khi thu gọn thao tác.
- Khắc phục một vấn đề với
- Các thay đổi đối với dịch vụ Hỗ trợ thiết kế Thư viện:
-
- Đã khắc phục sự cố
TabLayout
do gộp thẻ. (Vấn đề 201827) - Sửa một lỗi trong
NavigationView
gây ra lỗi màu cần chọn. (Vấn đề 201951) - Khắc phục lỗi
setBackgroundTintList()
không thể thay đổi nền được nữa . (Vấn đề 201873) - Khắc phục vấn đề
AppBarLayout
không cuộn hoàn toàn nằm ngoài khung nhìn khi dùng cùng vớiandroid:fitsSystemWindows = “true”
. (Vấn đề 201822) - Khắc phục sự cố
BottomSheetDialog
không hiển thị lượt xem nội dung ngắn chính xác. (Vấn đề 201793) - Khắc phục sự cố khiến
BottomSheetDialogFragment
di chuyển thỉnh thoảng khi nội dung bên trong có sự thay đổi. (Vấn đề 202125) - Khắc phục sự cố trong đường liên kết của bộ đếm TextInputLayout
- Khắc phục sự cố xảy ra khi
TextInputLayout.getCounterMaxLength()
khôi phục trạng thái đã lưu. (Vấn đề 202375) - Sửa lỗi
ClassCastException
xảy ra khi khôi phục mộtCoordinatorLayout
bằng cách sử dụng trạng thái đã lưu của một khung hiển thị không phải làCoordinatorLayout
.
- Đã khắc phục sự cố
- Các thay đổi đối với VectorDrawableCompat:
-
- Khắc phục lỗi đọc sai biến cho
android:tintMode
. (Vấn đề 201907)
- Khắc phục lỗi đọc sai biến cho
Bản sửa đổi 23.2.0
Tháng 2 2016
- Các thay đổi đối với Thư viện hỗ trợ phiên bản 4:
-
- Thêm
MediaBrowserCompat
để hỗ trợMediaBrowser
vàMediaBrowserServiceCompat
để hỗ trợMediaBrowserService
. Thông tin này hữu ích khi kết nối dịch vụ nền của một ứng dụng đa phương tiện với các thành phần giao diện người dùng, cũng như tích hợp với Android Auto và Android Wear mà không cần API cấp 21 trở lên. - Hệ thống hiện gọi
onActivityResult()
cho mộtFragmentActivity
được lồng.
- Thêm
- Các thay đổi cho AppCompat phiên bản 7 thư viện:
-
- Thêm chức năng Chế độ ban đêm vào API cấp 14 trở lên. Chuyển đổi giữa Material Giao diện sáng và tối Material dựa trên thời gian trong ngày hoặc cài đặt dành riêng cho ứng dụng.
-
- Bạn có thể tìm thấy các giao diện ngày và đêm tại đây:
<sdk>/extras/android/support/v7/appcompat/res/values/themes_daynight.xml
AppCompatDelegate.setDefaultNightMode()
: đặt chế độ mặc định của ứng dụng bằng cách truyền một trong các hằng số sau:-
MODE_NIGHT_AUTO
MODE_NIGHT_NO
MODE_NIGHT_YES
MODE_NIGHT_FOLLOW_SYSTEM
AppCompatDelegate.setLocalNightMode()
: ghi đè cài đặt chế độ ban đêm cho thành phần ứng dụng cục bộ.AppCompatDelegate.getDefaultNightMode()
: trả lại hàng chế độ ban đêm mặc định.
- Bạn có thể tìm thấy các giao diện ngày và đêm tại đây:
- Các thay đổi đối với mediarouter phiên bản 7 thư viện:
-
- Trả ngay
MediaRouteControllerDialog
áp dụng chính xác màu giao diện tuỳ chỉnh của ứng dụng.
- Trả ngay
- Các thay đổi đối với Thư viện hỗ trợ thiết kế:
-
- Đã thêm hỗ trợ cho dưới cùng
trang tính. Trình bổ trợ tương tác
BottomSheetBehavior
cho phép khung hiển thị con củaCoordinatorLayout
hoạt động như bảng dưới cùng. Lớp cơ sởBottomSheetCallback
cung cấp lệnh gọi lại để theo dõi các sự kiện ở bảng dưới cùng.
- Đã thêm hỗ trợ cho dưới cùng
trang tính. Trình bổ trợ tương tác
- Các thay đổi đối với việc hỗ trợ CustomTabs thư viện:
-
- Chrome Thẻ tuỳ chỉnh hiện cho phép các ứng dụng thêm thanh dưới cùng vào một thao tác ngoài nút hành động trên cùng hiện tại.
CustomTabsIntent.Builder.addToolBarItem()
: thêm một hành động vào một tab tuỳ chỉnh. Bạn có thể sử dụng tính năng này để thêm nhiều nút.CustomTabsSession.setToolBarItem()
: cập nhật hình ảnh cho các mục trên thanh công cụ. Phương thức này chỉ thành công nếu được cung cấp mã hợp lệ và phiên trình duyệt đang chạy ở nền trước.
- Thêm thư viện hỗ trợ VectorDrawable:
-
- Hạng đã thêm:
-
VectorDrawableCompat
AnimatedVectorDrawableCompat
- Thêm tính năng hỗ trợ cho các thành phần
VectorDrawable
vào ứng dụng chạy trên API cấp 7 trở lên.AnimatedVectorDrawable
thành phần cũng được hỗ trợ trên API cấp 11 trở lên. Thành phần vectơ có thể là nhỏ hơn đáng kể so với thành phần hình ảnh và sẽ giúp giảm bằng cách giảm số lượng tài sản cần thiết để hỗ trợ nhiều màn hình thiết bị. - Thư viện này hiện là phần phụ thuộc của thư viện AppCompat phiên bản 7, cho phép
nhà phát triển và AppCompat
để dễ dàng sử dụng các vectơ vẽ được. Để sử dụng
VectorDrawableCompat
trongImageButton
hoặcImageView
, hãy sử dụng XMLapp:srcCompat
hoặcsetImageResource()
. - Để tiếp tục tham chiếu mã thuộc tính trên API cấp 20 hoặc
thấp hơn, hãy thêm cờ
appt
sau vào tệpbuild,gradle
: -
- Nếu bạn đang tạo bằng trình bổ trợ Android cho Gradle 1.5.0 hoặc
thấp hơn, hãy thêm đoạn mã sau vào tệp
build.gradle
: -
android { defaultConfig { // Stops the Gradle’s automatic rasterization of vectors generatedDensities = [] } // Flag that tells aapt to keep the attribute ids aaptOptions { additionalParameters "--no-version-vectors" } }
- Nếu bạn đang tạo bằng trình bổ trợ Android cho Gradle 2.0.0 hoặc
cao hơn, hãy thêm đoạn mã sau vào tệp
build.gradle
: -
android { defaultConfig { vectorDrawables.useSupportLibrary = true } }
- Nếu bạn đang tạo bằng trình bổ trợ Android cho Gradle 1.5.0 hoặc
thấp hơn, hãy thêm đoạn mã sau vào tệp
- Các thay đổi cho Leanback phiên bản 17 Thư viện:
-
- Đã thêm các tính năng mới vào
GuidedStepFragment
, là thành phần hướng dẫn người dùng đưa ra một quyết định hoặc một loạt quyết định: -
- Đã thêm các thao tác của nút vào
GuidedAction
: GuidedStepFragment.setButtonActions()
: đặt danh sáchGuidedAction
nút người dùng có thể chọn trong chế độ xem Thao tác.- Các trường mô tả hiện có thể chỉnh sửa được:
-
GuidedAction.Builder.descriptionEditable()
: khi truyềntrue
, đặt nội dung mô tả của thao tác ở chế độ có thể chỉnh sửa.GuidedAction.getEditDescription()
: trả về thành phần có thể chỉnh sửa mô tả dưới dạngCharSequence
.
- Đã thêm danh sách thả xuống các hành động phụ:
-
GuidedAction.setSubActions()
: thiết lập danh sáchGuidedAction
dưới dạng trình đơn thả xuống trình đơn gồm các hành động phụ.
- Đã thêm các thao tác của nút vào
- Đã thêm tiện ích
GuidedDatePickerAction
cho chức năngDatePicker
: -
- Ngày được chọn bằng các cột năm, tháng, ngày và có giá trị dải ô có thể tuỳ chỉnh.
GuidedDatePickerAction.Builder
: lớp trình tạo cho đối tượngGuidedDatePickerAction
.GuidedDatePickerAction.Builder.datePickerFormat(String datePickerFormat)
: đặt định dạng ngày mong muốn bằng cách truyềnString
gồm ba ký tự thích hợp, ví dụ:“YMD”
hoặc“MDY”
. Ngoài ra, hãy dùng thuộc tính XMLdatePickerFormat
.
- Đã thêm các tính năng mới vào
- Các thay đổi đối với RecyclerView phiên bản 7 thư viện:
-
RecyclerView
hiện đã có một người dùng chọn sử dụng có tên là AutoMeasure (Tự động đo lường), cho phépRecyclerView.LayoutManager
dễ dàng gói hoặc xử lý các thông số đo lường khác nhau do mẹ củaRecyclerView
. Nó hỗ trợ tất cả tính năng ảnh động hiện có củaRecyclerView
.-
- Nếu bạn có
RecyclerView.LayoutManager
tuỳ chỉnh, hãy gọisetAutoMeasureEnabled(true)
để bắt đầu sử dụng API AutoMeasure. Tất cả đối tượngRecyclerView.LayoutManager
tích hợp sẵn bật tính năng tự động đo lường theo mặc định. RecyclerView.LayoutManager
không còn bỏ qua một số chế độ cài đặtRecyclerView.LayoutParams
, chẳng hạn nhưMATCH_PARENT
theo hướng cuộn.Lưu ý: Những quy định hạn chế bị gỡ bỏ này có thể khiến hành vi không mong muốn trong bố cục của mình. Đảm bảo bạn chỉ định rõ đúng tham số bố cục.
- Nếu bạn có
- Khi cập nhật
RecyclerView.ViewHolder
có tải trọng thông tin,DefaultItemAnimator
hiện đang tắt ảnh động thay đổi. - Bây giờ, bạn có thể sửa đổi tốc độ thoát
ItemTouchHelper
thành kiểm soát độ nhạy khi vuốt. Để vuốt dễ hoặc khó vuốt hơn, ghi đègetSwipeEscapeVelocity(float defaultValue)
và sửa đổidefaultValue
.
Bản sửa đổi 23.1.1
Tháng 11 năm 2015
- Các thay đổi cho v7 recyclerview library:
-
- Khắc phục sự cố xảy ra khi bạn thực hiện thao tác vuốt để đóng
Lớp tiện ích
ItemTouchHelper
cung cấp, sau đó thêm một mặt hàng. (Vấn đề 190500)
- Khắc phục sự cố xảy ra khi bạn thực hiện thao tác vuốt để đóng
Lớp tiện ích
- Các thay đổi đối với thư viện lựa chọn ưu tiên phiên bản 7:
-
- Khắc phục vấn đề về việc sử dụng ProGuard. (Vấn đề 183261)
- Các thay đổi đối với thư viện Hỗ trợ Leanback phiên bản 17:
-
- Đã khắc phục một số vấn đề nội bộ trong thư viện này.
- Các thay đổi đối với thư viện Hỗ trợ thiết kế:
-
- Thêm phương thức
getHeaderView
vào lớpNavigationView
. - Khắc phục vấn đề nền trong suốt cho đối tượng
FloatingActionButton
trên thiết bị chạy Android 4.0 (API cấp 15) trở xuống. (Vấn đề 183315)
- Thêm phương thức
Bản sửa đổi 23.1.0
Tháng 10 năm 2015
- Các thay đổi đối với Thư viện hỗ trợ phiên bản 4:
-
- Thêm tính năng hỗ trợ giao diện
OnScrollChangedListener
vào Tiện íchNestedScrollView
. Nó cho phép bạn nhận lệnh gọi lại khi vị trí cuộn X hoặc Y thay đổi. - Đã thêm một lớp
MediaButtonReceiver
để chuyển tiếp các bộ điều khiển chế độ phát đã nhận đối với dịch vụ đang quản lý lớpMediaSessionCompat
. Chiến lược phát hành đĩa đơn LớpMediaSessionCompat
có một hàm khởi tạo có thể tự động tìm trình nhận nút đa phương tiện trong tệp kê khai. Đáp nút nhận nút đa phương tiện là phần quan trọng để xử lý bộ điều khiển chế độ phát thông qua phần cứng hoặc thiết bị điều khiển Bluetooth.
- Thêm tính năng hỗ trợ giao diện
- Các thay đổi đối với thư viện appcompat phiên bản 7:
-
- Thêm các tiện ích
Seekbar
vàImageButton
của Material Design. - Cập nhật tiện ích
ImageView
để hỗ trợ tính năng phủ màu. - Cập nhật giao diện của tiện ích
SwitchCompat
.
- Thêm các tiện ích
- Các thay đổi đối với thư viện mediarouter v7:
-
- Thêm các tính năng sau vào lớp
MediaRouteChooserDialog
: - Cho thấy trang đang tải trong khi khám phá các nhà cung cấp định tuyến nội dung đa phương tiện.
- Bao gồm biểu tượng loại thiết bị để nhận dạng thiết bị dễ dàng hơn.
- Sắp xếp các tuyến đường theo tần suất sử dụng trong ứng dụng hiện tại.
- Hỗ trợ chế độ ngang.
- Thêm các tính năng sau vào lớp
MediaRouteControllerDialog
: - Nhận dạng quá trình truyền màn hình và cung cấp nội dung mô tả phù hợp.
- Hỗ trợ nhiều kích thước ảnh bìa đĩa nhạc và tỷ lệ khung hình, đồng thời tải ảnh không đồng bộ.
- Tự động chọn màu nội dung dựa trên màu chính của ứng dụng.
- Điều chỉnh bố cục hộp thoại dựa trên không gian màn hình có sẵn trên thiết bị.
- Hỗ trợ chế độ ngang.
- Thêm các tính năng sau vào lớp
- Các thay đổi cho thư viện bảng khung hiển thị phiên bản 7:
-
- Thêm phương thức
setRegion()
để hỗ trợ trích xuất màu từ một nội dung cụ thể vùng của đối tượngBitmap
.
- Thêm phương thức
- Các thay đổi cho v7 recyclerview library:
-
- Thêm API ảnh động cải tiến vào lớp
ItemAnimator
để cải thiện hiệu suất tuỳ chỉnh: - Các ảnh động thay đổi không còn thực thi hai bản sao của đối tượng
ViewHolder
nữa, cho phép hoạt ảnh nội dung mục. Ngoài ra, đối tượngItemAnimator
sẽ quyết định xem muốn sử dụng lại cùng một đối tượngViewHolder
hay tạo một đối tượng cái mới. - API bản ghi thông tin mới mang lại cho lớp
ItemAnimator
sự linh hoạt để thu thập dữ liệu vào đúng điểm trong vòng đời bố cục. Thông tin này sẽ xuất hiện sau đã truyền vào các lệnh gọi lại động.
- Cung cấp kế hoạch chuyển đổi dễ dàng cho thay đổi về API không tương thích ngược này:
- Nếu trước đây đã mở rộng lớp
ItemAnimator
, bạn có thể thay đổi lớp cơ sở của bạn lênSimpleItemAnimator
và mã của bạn sẽ hoạt động như trước. LớpSimpleItemAnimator
cung cấp API cũ bằng cách gói API mới. - Đã xoá một số phương thức khỏi lớp
ItemAnimator
. Nội dung sau đây mã sẽ không biên dịch nữa:
Kotlin
recyclerView.itemAnimator.supportsChangeAnimations = false
Java
recyclerView.getItemAnimator().setSupportsChangeAnimations(false)
Bạn có thể thay thế bằng:
Kotlin
val animator: SimpleItemAnimator? = recyclerView.itemAnimator as? SimpleItemAnimator animator?.supportsChangeAnimations = false
Java
ItemAnimator animator = recyclerView.getItemAnimator(); if (animator instanceof SimpleItemAnimator) { ((SimpleItemAnimator) animator).setSupportsChangeAnimations(false); }
- Thêm API ảnh động cải tiến vào lớp
- Các thay đổi đối với phiên bản 7, phiên bản 14 và Thư viện Hỗ trợ lựa chọn ưu tiên phiên bản 17:
-
- Xoá các API để kiểm soát hộp thoại
EditText
.
- Xoá các API để kiểm soát hộp thoại
- Các thay đổi đối với thư viện Hỗ trợ Leanback phiên bản 17:
-
- Thêm phiên bản của lớp
GuidedStepFragment
cho Thư viện hỗ trợ (mở rộngandroid.support.v4.app.Fragment
) cũng như cải thiện ảnh động và chuyển đổi. - Cập nhật lớp
GuidedStepFragment
để có thể đặt lớp này lên đầu nội dung hiện có. - Đã thêm khả năng chú thích các loại hoàn thành tìm kiếm khác nhau vào
Lớp
SearchFragment
. - Thêm tính năng hỗ trợ chuyển đổi trang trình bày so le vào
VerticalGridFragment
.
- Thêm phiên bản của lớp
- Các thay đổi đối với thư viện Hỗ trợ thiết kế:
-
- Đã thêm
hỗ trợ đếm ký tự cho tiện ích
TextInputLayout
. - Thêm tính năng hỗ trợ chụp cạnh cho lớp
AppBarLayout
bằng cách thêm phương thức Hằng sốSCROLL_FLAG_SNAP
. Khi thao tác cuộn kết thúc, nếu khung hiển thị chỉ là có thể nhìn thấy một phần, thành phần hiển thị được chụp nhanh và cuộn đến cạnh gần nhất. - Thêm tính năng hỗ trợ cho khung hiển thị tuỳ chỉnh vào lớp
NavigationView
bằng cách sử dụng phương thức Thuộc tínhapp:actionLayout
hoặcMenuItemCompat.setActionView()
.
- Đã thêm
hỗ trợ đếm ký tự cho tiện ích
- Các thay đổi đối với Thư viện hỗ trợ thẻ tuỳ chỉnh:
-
- Thêm phương thức
enableUrlBarHiding()
vàoCustomTabsIntent
. Tính năng này cho phép khách hàng tuỳ chỉnh xem có tự động ẩn thanh URL hay không khi cuộn xuống. - Thêm phương thức
setActionButton()
vàoCustomTabsSession
. Chiến dịch này cho phép khách hàng thay đổi biểu tượng cho nút hành động tuỳ chỉnh trong một thẻ tuỳ chỉnh đã chạy. - Thêm hằng số
TAB_SHOWN
vàTAB_HIDDEN
dưới dạng sự kiện mới cho phương thứconNavigationEvent
củaCustomTabsCallback
.
- Thêm phương thức
Bản sửa đổi 23.0.1
Tháng 9 năm 2015
- Các thay đổi đối với v7 và Thư viện Hỗ trợ lựa chọn ưu tiên phiên bản 14:
-
- Thêm tệp kiểu và bố cục Material Design. (Vấn đề 183376)
- Các thay đổi đối với thư viện appcompat phiên bản 7:
-
- Khắc phục các vấn đề trục trặc của lớp
Fragment
bằng cách giới hạn việc sử dụng tầng phần cứng lên Android 4.1 (API cấp 16) trở lên. (Vấn đề 183896) - Khắc phục sự cố các nút phần cứng không hoạt động khi một hoạt động đã đặt giá trị
Toolbar
lớp để đóng vai trò làActionBar
bằng cách sử dụng phương thứcsetSupportActionBar()
. (Vấn đề 183334) - Cập nhật lớp
AppCompatDialogFragment
để không còn gửiWindows feature must be requested before adding content
. (Vấn đề 183186)
- Khắc phục các vấn đề trục trặc của lớp
- Các thay đổi đối với thư viện Hỗ trợ thiết kế:
-
- Đã khắc phục
Lớp
AppBarLayout
nên giờ đây lớp này sẽ vẽ chính xác sau xoay. (Vấn đề 183109) - Đã khắc phục
TabLayout
để lớp này hoạt động chính xác khi một mà người dùng nhấp sau khi vuốt. (Vấn đề 183123)
- Đã khắc phục
Lớp
- Các thay đổi đối với Thư viện hỗ trợ thẻ tuỳ chỉnh:
-
- Hạ
minSdkVersion
từ 16 đến 15 để hỗ trợ phiên bản. - Thêm một cách để tạo
CustomTabsSessionToken
trong một ý định.
- Hạ
Bản sửa đổi 23
Tháng 8 năm 2015
- Thêm các thư viện hỗ trợ mới:
Để xem danh sách đầy đủ các thay đổi đối với Thư viện hỗ trợ, hãy xem Hỗ trợ Báo cáo khác biệt của API thư viện.
Bản sửa đổi 22.2.1
Tháng 7 năm 2015
- Các thay đổi đối với thư viện Hỗ trợ thiết kế:
-
- Thêm các phương thức
hide()
vàshow()
vào phương thức LớpFloatingActionButton
cho lớp học có lập trình kích hoạt ảnh động. - Thêm hằng số
LENGTH_INDEFINITE
vào LớpSnackbar
để hiển thị thanh thông báo nhanh cho đến khi thanh thông báo bị đóng hoặc một thanh thông báo nhanh khác hiện lên. Ngoài ra, đã thêmsetActionTextColor(int)
vàsetActionTextColor(ColorStateList)
. - Thêm phương thức
getSelectedTabPosition()
vào phần tử LớpTabLayout
để truy xuất lớp thẻ đã chọn. - Cung cấp API hoàn toàn thông thạo cho
Lớp
android.support.v7.app.NotificationCompat.MediaStyle
cho phương thức tạo chuỗi. - Thêm các phương thức tiện lợi vào
RecyclerView
để chèn hàng loạt các mục.
- Thêm các phương thức
Để xem danh sách đầy đủ các thay đổi đối với Thư viện hỗ trợ, hãy xem Hỗ trợ Báo cáo khác biệt của API thư viện.
Bản sửa đổi 22.2.0
Tháng 5 năm 2015
- Thêm thư viện Hỗ trợ thiết kế:
-
- Đã thêm
TextInputLayout
để hiển thịEditText
gợi ý và văn bản lỗi dưới dạng nhãn nổi. - Thêm
FloatingActionButton
để triển khai một trên giao diện của mình nút hành động nổi, hỗ trợ kích thước mặc định hoặc kích thước thu nhỏ. - Thêm
Snackbar
để cung cấp chức năng gọn nhẹ thông tin phản hồi bằng một thao tác không bắt buộc trong thanh thông báo nhanh dạng ảnh động. - Thêm
TabLayout
để triển khai các thao tác khắc phục và có thể cuộn thẻ dễ dàng tích hợp vớiViewPager
. - Thêm
NavigationView
để triển khai ngăn điều hướng bao gồm cả khả năng tăng cường các mục trong trình đơn thông qua Tài nguyên trình đơn. - Thêm
CoordinatorLayout
cho một mục đích chung bố cục, dùng để tạo các phần phụ thuộc giữa các khung hiển thị đồng cấp và cho phép phản ứng dễ dàng cuộn giữa các thành phần thông quaCoordinatorLayout.Behavior
Nhiều thiết kế Các thành phần thư viện phải là thành phần con củaCoordinatorLayout
. - Thêm
AppBarLayout
, vùng chứa choToolbar
và các chế độ xem khác (chẳng hạn nhưTabLayout
) cho phản ứng với các sự kiện cuộn bằng cách cuộn ra khỏi màn hình, hiển thị trong phản ứng cuộn xuống hoặc thu gọn/thu gọn trước khi cuộn ra/vào màn hình. - Đã thêm
CollapsingToolbarLayout
để kiểm soát cáchToolbar
thu gọn. Thanh công cụ có thể thu gọn theo: ghim các thành phần lên đầu màn hình trong khi màn hình thu gọn, giới thiệu cuộn thị sai của các thành phần nhưImageView
, hoặc thêm màu màn hình nội dung khi chế độ xem được thu gọn một phần.
- Đã thêm
- Các thay đổi đối với thư viện hỗ trợ phiên bản 4:
-
- Đã thêm
getContentChangeTypes()
vàsetContentChangeTypes()
phương thức và loại thay đổi có liên quan trường vàoAccessibilityEventCompat
để xử lý sự kiện hỗ trợ tiếp cận. - Đã thêm
getActiveQueueItemId()
,getCustomActions()
, vàgetExtras()
có các trường trạng thái liên quan đến LớpPlaybackStateCompat
cho nhận thao tác tuỳ chỉnh từ hàng đợi. - Đã thêm
addCustomAction()
,setActiveQueueItemId()
, vàsetExtras()
vào phần LớpPlaybackStateCompat.Builder
để thêm sang trạng thái phát. - Đã thêm
fromCustomAction()
vàgetCustomAction()
phương thức vào LớpPlaybackStateCompat.CustomAction
để nhận thao tác tuỳ chỉnh từ hàng đợi. - Đã thêm
isAttachedToWindow()
,offsetLeftAndRight()
vàoffsetTopAndBottom()
vào lớpViewCompat
để xử lý các khung hiển thị. - Đã thêm
addOnPageChangeListener()
,clearOnPageChangeListeners()
vàremoveOnPageChangeListener()
cho lớpViewPager
để phản hồi trang thay đổi.Không dùng nữa
ViewPager.setOnPageChangeListener()
. - Đã thêm
notifySubtreeAccessibilityStateChanged()
phương thức đến lớpViewParentCompat
để thông báo cho thành phần mẹ của khung hiển thị rằng trạng thái hỗ trợ tiếp cận của một trong các thành phần con đã thay đổi. - Đã thêm
translationZ()
,translationZBy()
,z()
vàzBy()
vào lớpViewPropertyAnimatorCompat
cho thêm hoạt ảnh.
- Đã thêm
- Các thay đổi đối với thư viện appcompat phiên bản 7:
-
- Đã thêm
onWindowStartingSupportActionMode()
vàoAppCompatActivity
,AppCompatCallback
và Các lớpAppCompatDialog
để xử lý các chế độ thao tác đã bắt đầu từ cửa sổ hiện tại. - Đã thêm
isHandleNativeActionModesEnabled()
vàsetHandleNativeActionModesEnabled()
vào phần LớpAppCompatDelegate
để xử lý các chế độ thao tác gốc.
- Đã thêm
Để xem danh sách đầy đủ các thay đổi đối với Thư viện hỗ trợ, hãy xem Hỗ trợ Báo cáo khác biệt của API thư viện.
Bản sửa đổi 22.1.0
Tháng 4 năm 2015
- Các thay đổi đối với thư viện chú thích:
-
- Thêm thư viện Chú thích để hỗ trợ hoạt động kiểm tra mã nâng cao. Chú thích được thêm dưới dạng thẻ siêu dữ liệu mà bạn đính kèm vào biến, thông số, và trả về giá trị để kiểm tra giá trị trả về của phương thức, các tham số đã truyền và biến và trường.
- Các thay đổi đối với thư viện hỗ trợ phiên bản 4:
-
- Đã thêm lớp
ColorUtils
để cung cấp một tập hợp các phương thức tiện ích liên quan đến màu sắc. - Đã thêm
unwrap()
vàwrap()
phương thức vàoDrawableCompat
, cho phép bạn sử dụngsetTint()
,setTintList()
, vàsetTintMode()
trên tất cả thiết bị API cấp 4 trở lên. - Đã thêm lớp
TraceCompat
vào ghi các sự kiện theo dõi vào vùng đệm theo dõi hệ thống, sau đó các sự kiện này có thể được thu thập và được trực quan hoá bằng công cụ Systrace. - Đã thêm lớp
CircularIntArray
để tạo cấu trúc dữ liệu mảng số nguyên tròn. - Đã thêm
clear()
,removeFromStart()
, vàremoveFromEnd()
vào lớpCircularArray
. Ngoài ra, đã thay đổi các phương thức hiện có trong lớp này không phải là cuối cùng. - Đã thêm
InputDeviceCompat
đóng vai trò là lớp trợ giúp để truy cập dữ liệu trong LớpInputDeviceCompat
. - Đã thêm
LayoutInflaterCompat
đóng vai trò là lớp trợ giúp để truy cập dữ liệu trong LớpLayoutInflaterCompat
và thêm giao diệnLayoutInflaterFactory
. - Thêm các lớp, phương thức và giao diện để hỗ trợ tính năng cuộn lồng nhau.
- Đã thêm
NestedScrollingChildHelper
vàNestedScrollingParentHelper
các lớp trợ giúp để triển khai khung hiển thị mẹ và khung hiển thị con lồng nhau. - Đã thêm
NestedScrollingChild
giao diện được triển khai bởi các lớp conView
. - Đã thêm
NestedScrollingParent
và giao diệnScrollingView
để hỗ trợ thao tác cuộn và cung cấp các API liên quan đến thao tác cuộn. - Đã thêm
Phương thức
getNestedScrollAxes()
choViewGroupCompat
. - Thêm các phương thức vào lớp
ViewParentCompat
cho hỗ trợ tính năng cuộn lồng nhau. - Đã thêm
NestedScrollView
để hỗ trợ chức năng cuộn thành phần mẹ và con lồng ghép trên cả phiên bản mới và cũ của Android.
- Đã thêm
- Thêm phương thức và hằng số vào
MotionEventCompat
để nhận giá trị trục và nguồn sự kiện. - Đã cập nhật
AccessibilityNodeInfoCompat
để thêm phương thức cho các lỗi, trường hợp không hợp lệ nội dung và nhãn. - Thêm các lớp nội suy sau đây cho ảnh động:
FastOutLinearInInterpolator
,FastOutSlowInInterpolator
,LinearOutSlowInInterpolator
,LinearOutSlowInInterpolator
vàPathInterpolatorCompat
. - Thêm lớp
Space
để tạo khoảng trống giữa thành phần khác trong bố cục mục đích chung. Lớp này không được dùng nữa trong thư việngridlayout. - Thêm lớp
TextViewCompat
để truy cập trongTextView
. - Thêm thông số dịch chuyển vào
Phương thức
onPull()
trong phần tử LớpEdgeEffectCompat
.
- Đã thêm lớp
- Các thay đổi đối với thư viện appcompat phiên bản 7:
-
- Thêm tính năng hỗ trợ phủ màu cho các tiện ích tương thích, bao gồm
AppCompatAutoCompleteTextView
,AppCompatButton
,AppCompatCheckBox
,AppCompatCheckedTextView
,AppCompatEditText
,AppCompatMultiAutoCompleteTextView
,AppCompatRadioButton
,AppCompatRatingBar
,AppCompatSpinner
vàAppCompatTextView
. - Cập nhật
AppCompatActivity
làm cơ sở cho các hoạt động sử dụng các tính năng trên thanh thao tác của thư viện hỗ trợ. Lớp này thay thếActionBarActivity
không dùng nữa. - Đã thêm
Giao diện
AppCompatCallback
được triển khai cho AppCompat để có thể thực hiện các lệnh gọi lại. - Đã thêm
Lớp trừu tượng
AppCompatDelegate
làm đại diện, bạn có thể sử dụng để mở rộng hỗ trợ của AppCompat cho bất kỳ hoạt động nào. - Đã thêm
AppCompatDialog
lớp làm lớp cơ sở cho hộp thoại theo chủ đề AppCompat. - Đã thêm kiểu vòng quay
AlertDialog
và Các lớpAlertDialog.Builder
để cung cấp AppCompatAlertDialog
theo chủ đề. - Đã thêm lớp
Palette.Builder
để tạo các thực thểPalette
.- Đã thêm
from(Bitmap)
vào lớpPalette
để bắt đầu tạo Palette (Bảng khung hiển thị) với giá trị được trả về Thực thểPalette.Builder
. - Không dùng
Palette.generate()
vàPalette.generateAsync()
.
- Đã thêm
- Đã thêm
Phương thức
getAbsoluteAlignment()
choGridLayout.Spec
. - Ngừng sử dụng
app:theme
để định kiểuToolbar
Bạn hiện có thể dùngandroid:theme
cho thanh công cụ trên mọi thiết bị API cấp 7 trở lên và Hỗ trợandroid:theme
cho mọi tiện ích trên các thiết bị API cấp 11 trở lên.
- Thêm tính năng hỗ trợ phủ màu cho các tiện ích tương thích, bao gồm
- Các thay đổi đối với thư viện Leanback phiên bản 17:
-
- Đã thêm
GuidedStepFragment
,GuidanceStylist
vàGuidedActionsStylist
để hỗ trợ tạo ra các luồng quyết định nhiều bước.
- Đã thêm
- Các thay đổi đối với thư viện recyclerview phiên bản:
-
- Thêm
SortedList
lớp để hiển thị các mặt hàng trong thứ tự danh sách và cung cấp thông báo về các thay đổi đối với danh sách. - Đã thêm lớp
SortedListAdapterCallback
có thể liên kết một danh sách được sắp xếp với một LớpRecyclerView.Adapter
.
- Thêm
- Các thay đổi đối với thư viện RenderScript v8:
-
- Đã thêm lớp
ScriptIntrinsicHistogram
cho sử dụng làm bộ lọc biểu đồ. - Đã thêm lớp
ScriptIntrinsicResize
cho thực hiện đổi kích thước phân bổ 2D.
- Đã thêm lớp
- Các thay đổi đối với thư viện hỗ trợ phiên bản 4:
-
- Cập nhật phương thức
getDrawable()
để trả về một đối tượng có thể vẽ cho một mã tài nguyên cụ thể đã chỉ định, mật độ màn hình và giao diện. - Thêm phương thức
setImportantForAccessibility()
để bạn có thể cho biết liệu khung hiển thị có nên kích hoạt hay không sự kiện hỗ trợ tiếp cận. - Thêm phương thức
getStatusBarBackgroundDrawable()
để bạn có thể lấy nền của thanh trạng thái đối tượng có thể vẽ. - Thêm các phương thức vào phần
NotificationCompat.CarExtender.UnreadConversation
để các ứng dụng nhắn tin của Android Auto có thể truy xuất thêm dữ liệu thông báo. - Thêm phương thức
getProgressCircleDiameter()
để trả về đường kính của bố cục vòng tròn. - Đã thay đổi
DrawerLayout
mặc định màu của thanh trạng thái thànhcolorPrimaryDark
.
- Cập nhật phương thức
- Các thay đổi đối với thư viện appcompat phiên bản 7:
-
- Đã thêm kiểu vòng quay
Base_Widget_AppCompat_Spinner_Underlined
. - Thêm kiểu tiện ích được phủ màu bằng
Widget_AppCompat_AutoCompleteTextView
,MultiAutoCompleteTextView
,TextAppearance_AppCompat_Button
vàBase_Widget_AppCompat_RatingBar
.
- Đã thêm kiểu vòng quay
- Các thay đổi đối với thư viện Leanback phiên bản 17:
-
- Đã thêm
getRecycledPoolSize()
và Phương thứcsetRecycledPoolSize()
để cho phép tuỳ chỉnh kích thước nhóm tái chế. - Thêm thuộc tính
WRAP_CONTENT
vào chế độ cài đặt chiều rộng bố cục để hỗ trợ nội dung được xuống dòng cho biểu tượng tiêu đề. - Đã xác định
R.transition
trong XML thành cải thiện thông tin cập nhật về hiệu ứng chuyển đổi. - Bật tính năng hỗ trợ cho bố cục từ phải sang trái.
- Thêm tính năng hỗ trợ sự kiện chính phát và tạm dừng nội dung nghe nhìn vào
Lớp
PlaybackOverlayFragment
. - Thêm các chuyển đổi nhập và trả lại vào
Lớp
BrowseFragment
và LớpDetailsFragment
. - Thêm phương thức
replace()
để thay thế các mục trong mảng trình chuyển đổi của một đối tượng.
- Đã thêm
- Các thay đổi đối với thư viện mediarouter phiên bản 7:
-
- Cập nhật biểu tượng Google Cast để sử dụng Material Design.
- Cập nhật tất cả biểu tượng dùng trong hộp thoại
MediaRouter
để sử dụng phong cách material design.
- Các thay đổi đối với thư viện recyclerview phiên bản:
-
- Đã thêm
getlayoutPosition()
và phương thứcgetadapterPosition()
vàoRecyclerView
. - Không dùng
classgetChildPosition()
vàfindViewHolderForPosition()
phương thức trongRecyclerView
. - Không dùng phương thức
getPosition()
trong LớpRecyclerView.ViewHolder
. - Không dùng phương thức
getViewPosition()
trong LớpRecyclerView.LayoutParams
.
- Đã thêm
- Các thay đổi đối với thư viện hỗ trợ phiên bản 4:
-
- Đã thêm một vài
NotificationCompat.WearableExtender
giúp cải thiện khả năng hiển thị mã vạch trong thông báo trên thiết bị đeo.
- Đã thêm một vài
- Các thay đổi đối với thư viện hỗ trợ phiên bản 4:
-
- Đã thêm vào
NotificationCompat.CarExtender
để hỗ trợ tiện ích Android Auto cho thông báo.
- Đã thêm vào
- Các thay đổi đối với thư viện appcompat phiên bản 7:
-
- Thêm hàm khởi tạo
PopupMenu
để hỗ trợ cửa sổ bật lên mới . - Thêm tính năng hỗ trợ cho nội dung mô tả biểu tượng Thu gọn trong
Toolbar
. - Cập nhật tiện ích
SearchView
để hỗ trợ tính năng hiển thịcommitIcon
. - Xoá thuộc tính
buttonGravity
khỏi LớpToolbar
.
- Thêm hàm khởi tạo
- Các thay đổi đối với thư viện chế độ xem thẻ phiên bản 7:
-
- Thêm API
setCardBackgroundColor(ColorStateList)
vào hỗ trợ thay đổi màu nền củaCardView
. - Đã thay đổi
CardView
để báo cáo chính xác hơn giá trị độ mờ làTRANSLUCENT
.
- Thêm API
- Các thay đổi đối với recyclerview phiên bản 7 thư viện:
-
- Đã thêm
TOUCH_SLOP_DEFAULT
và Hằng sốTOUCH_SLOP_PAGING
vào lớpRecyclerView
để hỗ trợ cấu hình phân trang cảm ứng cho tính năng phân trang.
- Đã thêm
- Các thay đổi đối với thư viện Leanback phiên bản 17:
-
- Bổ sung tính năng hỗ trợ để tạo các mảnh mã phiên bản 4.
- Đã thay đổi màu văn bản phụ trên
CardView
.
- Đã thêm Thư viện hỗ trợ multidex hỗ trợ nhiều Tệp Dalvik có thể thực thi (DEX) để hỗ trợ tệp multi-dex trước Android 5.0.
- Các thay đổi đối với thư viện hỗ trợ phiên bản 4:
-
- Đã thêm hỗ trợ cho
Fragment
cho các thiết bị chạy Android 5.0 (API cấp 21). Lưu ý rằng quá trình chuyển đổi không ảnh hưởng đến các thiết bị đang chạy Android 4.4 trở xuống. - Thêm
DocumentFile
để dễ dàng thực hiện điểm chuyển đổi từFile
khi làm việc với cây tài liệu. Tuy nhiên, lớp học này đòi hỏi mức hao tổn xử lý cao hơn so với Đã thêmDocumentsContract
API vào Android 4.4 (API cấp 19). Vì vậy, bạn nên chuyển sang sử dụngDocumentsContract
khi chạy trên Android 4.4 và cao hơn.
- Đã thêm hỗ trợ cho
- Các thay đổi đối với phiên bản Appcompat của phiên bản 7 thư viện:
-
- Hỗ trợ thêm cho material thiết kế giao diện người dùng.
- Thêm
Toolbar
để khái quát hoá chức năng củaActionBar
đối với sử dụng trong bố cục ứng dụng. - Đã cập nhật
ActionBarDrawerToggle
, chứa ảnh động từ trình đơn đến mũi tên - Cập nhật các tiện ích phổ biến trên giao diện người dùng để cho phép phủ màu qua giao diện khi chạy trên các thiết bị sử dụng phiên bản Android 5.0 trước
- Đã thêm
SwitchCompat
, điều chỉnh cho phiên bản cũ của tiện íchSwitch
đã được thêm vào Android 4.0 (API cấp 14).
- Thư viện chế độ xem thẻ phiên bản 7 mới:
-
- Đã thêm tiện ích
CardView
cung cấp cách triển khai tương thích với Material Design để hiển thị mục dữ liệu.
- Đã thêm tiện ích
- recyclerview phiên bản 7 mới thư viện:
-
- Đã thêm tiện ích
RecyclerView
, mang đến một khung hiển thị danh sách linh hoạt để cung cấp một cửa sổ giới hạn thành một tập dữ liệu lớn.
- Đã thêm tiện ích
- Thư viện bảng khung hiển thị phiên bản 7 mới:
-
- Đã thêm lớp
Palette
, cho phép bạn trích xuất các màu nổi bật từ một hình ảnh.
- Đã thêm lớp
- Thư viện Leanback phiên bản 17 mới:
-
- Bổ sung tính năng hỗ trợ xây dựng giao diện người dùng TV, bao gồm
BrowseFragment
,DetailsFragment
vàPlaybackOverlayFragment
. Để biết thêm thông tin về cách sử dụng các tiện ích giao diện người dùng này, xem Xây dựng truyền hình Ứng dụng phát.
- Bổ sung tính năng hỗ trợ xây dựng giao diện người dùng TV, bao gồm
- Các thay đổi đối với thư viện hỗ trợ phiên bản 4:
-
- Đã thêm tính năng hỗ trợ mở rộng về thông báo cho Android Wear trong
NotificationCompat.WearableExtender
, cho phép bạn để chỉ định tính năng dành riêng cho thiết bị đeo trong thông báo. - Đã thêm
NotificationCompat.Action.WearableExtender
, cho phép thêm thao tác trên thông báo trên thiết bị đeo. - Thêm
NotificationManagerCompat
để cho phép bạn để đưa ra các thông báo hỗ trợ thích hợp cho các tính năng dành cho thiết bị đeo. - Thêm
RemoteInput
, cho phép thiết bị cầm tay để nhận thông tin nhập bằng giọng nói từ một thông báo xuất hiện trên thiết bị đeo. - Cải thiện khả năng xử lý phản hồi chạm trong
SwipeRefreshLayout
.
- Đã thêm tính năng hỗ trợ mở rộng về thông báo cho Android Wear trong
- Các thay đổi đối với thư viện hỗ trợ phiên bản 4:
-
- Đã thêm lớp
SwipeRefreshLayout
, tính năng này cho phép người dùng làm mới nội dung của chế độ xem bằng cử chỉ vuốt. - Khắc phục các vấn đề về khả năng hỗ trợ tiếp cận với ngăn điều hướng.
- Đã thêm lớp
- Các thay đổi đối với thư viện appcompat phiên bản 7:
-
- Khắc phục các sự cố nền với thanh thao tác.
- Các thay đổi đối với thư viện hỗ trợ phiên bản 4:
-
- Cải thiện
PrintHelper
bằng cách thêm tính năng không đồng bộ xử lý việc in ấn. - Sửa lớp gần đúng
DrawerLayout
củaaddChildrenForAccessibility()
. - Khắc phục lỗi phản chiếu trang trình bày có thể vẽ trong
ActionBarDrawerToggle
. - Khắc phục lỗi tắt từng mục khi xoá một mục khỏi trình lặp của bộ sưu tập.
- Cải thiện
- Các thay đổi đối với thư viện mediarouter v7:
-
- Cải thiện tính năng nhận dạng tuyến đường bằng cách sử dụng tên thành phần đầy đủ trong
MediaRouteProvider.ProviderMetadata
. - Đã cập nhật
MediaRouteChooserDialog
để ẩn các mục đã tắt tuyến đường.
- Cải thiện tính năng nhận dạng tuyến đường bằng cách sử dụng tên thành phần đầy đủ trong
- Các thay đổi đối với thư viện tập lệnh kết xuất phiên bản 8
-
- Thêm tính năng truyền lỗi cho lớp RenderScript.
- Các thay đổi đối với thư viện hỗ trợ phiên bản 4:
-
- Thêm tính năng hỗ trợ cho các API Bộ nhớ ngoài với
getObbDirs()
,getExternalFilesDirs()
,getExternalCacheDirs()
, vàgetStorageState()
. Các phương thức trợ giúp này luôn trả về một đối tượng tệp duy nhất trên các thiết bị chạy Android 4.3 (API cấp 18) trở xuống. Khi chạy trên Android 4.4 (API cấp 19) trở lên, các phương thức này có thể trả về nhiều đối tượng tệp. - Thêm lớp
PrintHelper
hoạt động với In các API để in hình ảnh mà không cần phải viết mã tối thiểu. - Bổ sung tính năng hỗ trợ giao diện người dùng kéo để mở cho các trình đơn bật lên. Để biết thêm thông tin, hãy xem
PopupMenuCompat
vàListPopupWindowCompat
- Cải thiện khả năng hỗ trợ tiếp cận với việc bổ sung
Phương thức
findFocus()
trongAccessibilityNodeProviderCompat
và Phương thứcgetLiveRegion()
trongAccessibilityNodeInfoCompat
. - Thêm lớp trợ giúp
ScaleGestureDetectorCompat
cho truy cập vào các phương thức cử chỉ điều chỉnh tỷ lệ mới. - Khắc phục sự cố với
ActionBarDrawerToggle
trong ngôn ngữ từ phải sang trái được hiển thị. - Đã sửa đổi tuỳ chọn
AutoScrollHelper
để tiêu thụ sự kiện chạm hoặc cho phép truyền chúng tới các chế độ xem khác.
- Thêm tính năng hỗ trợ cho các API Bộ nhớ ngoài với
- Các thay đổi đối với thư viện mediarouter v7:
-
- Hỗ trợ thêm tính năng thêm nội dung nghe nhìn vào hàng đợi phát nội dung nghe nhìn, thiết lập giá trị tiêu đề HTTP và nội dung nghe nhìn thời lượng phát.
- Thêm các thao tác bắt đầu, lấy và kết thúc rõ ràng trong phiên để quản lý nội dung nghe nhìn một cách rõ ràng phiên phát lại bằng bộ định tuyến phương tiện.
- Các thay đổi đối với thư viện hỗ trợ phiên bản 4:
-
- Giao diện người dùng
- Thêm
BidiFormatter
để xử lý chuỗi văn bản kết hợp văn bản được định dạng từ phải sang trái và trái sang phải. - Sửa đổi
ViewPager
để xử lý tốt hơn các trường hợp mà trình phân trang có chiều rộng đo được bằng 0 trong quá trình xử lý bố cục ban đầu. - Đã sửa đổi
DrawerLayout
vàSlidingPaneLayout
để không gửi trường hợp ngoại lệ cho đo lường trong khi chỉnh sửa mã dự án.
- Thêm
- Hỗ trợ người khuyết tật
- Thêm
ExploreByTouchHelper
để đơn giản hoá phương thức triển khai khả năng hỗ trợ tiếp cận cho khung hiển thị tuỳ chỉnh. - Khắc phục vấn đề xảy ra với
ViewPager
không chính xác điềnTYPE_VIEW_SCROLLED
sự kiện hỗ trợ tiếp cận. - Khắc phục một ngoại lệ về con trỏ rỗng trong
ViewPager
khi điền sẵn một sự kiện hỗ trợ tiếp cận. - Đơn giản hoá
AccessibilityNodeInfoCompat
bằng cách thay đổi đầu vàoCharSequence
thành đối tượngString
. - Không dùng
AccessibilityRecordCompat
nữa hàm khởi tạo đã sử dụngObject
làm đầu vào.
- Thêm
- Nội dung đa phương tiện
- Thêm
TransportMediator
lớp trợ giúp để quản lý kiểm soát truyền tải nội dung nghe nhìn, chẳng hạn như phát, tạm dừng, bỏ qua và các hành động khác đối với nội dung nghe nhìn. - Đã thêm
DisplayManagerCompat
để quản lý đầu ra cho một hoặc nhiều màn hình thiết bị.
- Thêm
- Nội dung thay đổi khác
- Thêm lớp trợ giúp
WakefulBroadcastReceiver
cho triển khai một mẫu chung là phát hiện sự kiện đánh thức thiết bị và chuyển công việc chuyển sangService
trong khi vẫn đảm bảo rằng thiết bị không quay lại ngủ trước khi quá trình chuyển giao hoàn tất. - Thêm hai API mới,
commitContentChanged()
vàrollbackContentChanged()
, đếnAsyncTaskLoader
đến giúp xử lý cập nhật nền cho các thay đổi dữ liệu sau đó bị huỷ.
- Thêm lớp trợ giúp
- Giao diện người dùng
- Thư viện appcompat phiên bản 7 mới:
-
- Thêm
ActionBar
để cho phép triển khai phần thiết kế giao diện người dùng trên thanh tác vụ mẫu quay lại Android 2.1 (API cấp 7) trở lên. Để sử dụng lớp này, bạn cần mà bạn triển khai hoạt động bằng cách mở rộng giao diện người dùng mới LớpActionBarActivity
.
- Thêm
- Thư viện mediarouter v7 mới:
-
Thêm thư viện mediarouter mới cung cấp hỗ trợ cho bản xem trước dành cho nhà phát triển Google Cast. API thư viện mediarouter v7 cung cấp một phương tiện để kiểm soát việc định tuyến các kênh truyền thông và luồng truyền thông từ thiết bị hiện tại ra màn hình bên ngoài, loa và các thiết bị đích khác, có khả năng tương thích với Android 2.1 (API cấp 7). Xem Phiên bản 7 mediarouter để biết thêm thông tin.
API thư viện mediarouter v7 được giới thiệu trong phần Hỗ trợ Thư viện r18 có thể thay đổi trong các bản sửa đổi sau này của tính năng Hỗ trợ Thư viện. Tại thời điểm này, bạn chỉ nên sử dụng thư viện khi kết nối bằng Google Cast bản dùng thử cho nhà phát triển.
- Các thay đổi đối với thư viện hỗ trợ phiên bản 4:
-
- Đã thêm
DrawerLayout
để tạo một Điều hướng Ngăn có thể kéo vào từ cạnh của cửa sổ. - Đã thêm tiện ích
SlidingPaneLayout
để tạo liên kết các chế độ xem tóm tắt và chi tiết được điều chỉnh thích hợp với nhiều kích thước màn hình. - Thêm
ActionBarDrawerToggle
làm cách để hoà kết hợp các hàmDrawerLayout
vàActionBar
. - Thêm
ViewDragHelper
làm thành phần chung mới để kéo khung hiển thị trong khung hiển thị mẹ. - Thêm
ScrollerCompat
để hỗ trợ khả năng tương thích vớiScroller
vàOverScroller
. - Đã thêm
FileProvider
để cho phép chia sẻ riêng tư giữa các ứng dụng. - Cập nhật
ViewPager
để gửi một ngoại lệ nếu giá trị lớpPagerAdapter
được sửa đổi mà không có cuộc gọi đếnnotifyDataSetChanged()
. - Khắc phục vấn đề liên quan đến chế độ sắp xếp bản vẽ của
ViewPager
trẻ đơn đặt hàng. - Sửa lỗi
GestureDetectorCompat
để điều phối bị thiếuonSingleTapConfirmed(MotionEvent)
cuộc gọi giữa thời gian chờ nhấn và sự kiện nhấn và giữ.
- Đã thêm
- Thư viện bố cục lưới phiên bản 7 mới:
-
- Thêm
GridLayout
để cung cấp hỗ trợ cho Đối tượng bố cụcGridLayout
. - Thêm
android.support.v7.widget.Space
có thể dùng để tạo vùng trống trong đối tượng bố cụcGridLayout
.
- Thêm
- Các thay đổi đối với thư viện hỗ trợ phiên bản 4:
-
- Cải thiện hành vi tương tác cho
ViewPager
. - Đã khắc phục lỗi có thể khiến
ViewPager
chọn sai trang. - Khắc phục việc sử dụng phương thức
removeView()
trong khi bố cục choViewPager
. - Khắc phục vấn đề với
SearchViewCompat
khi sử dụng phương thức nút quay lại để đóng sẽ không xoá văn bản tìm kiếm. Cách khắc phục này chỉ áp dụng cho lưu trữ API cấp 14 trở lên.
- Cải thiện hành vi tương tác cho
- Các thay đổi đối với thư viện hỗ trợ phiên bản 4:
-
- Giao diện người dùng
- Thêm tính năng hỗ trợ cho các lớp
Fragment
lồng nhau. - Thêm các điểm cải tiến cho quy trình gỡ lỗi
FragmentManager
. - Khắc phục sự cố trong
FragmentTabHost
khi mảnh và tương tác với thẻ có thể dẫn đến mất trạng tháiListView
. - Khắc phục vấn đề về gợi ý mà người dùng nhìn thấy trong
FragmentStatePagerAdapter
. - Đã thêm vào
PageTransformer
sangViewPager
để cho phép các ứng dụng cung cấp hành vi chuyển đổi tuỳ chỉnh để cuộn. - Đã thêm các tính năng mới và bản sửa lỗi vào
TaskStackBuilder
từ bản phát hành hiện tại. - Sửa
PagerTitleStrip
để theo dõi chính xácPagerAdapter
hiện đang được sử dụng. - Khắc phục sự cố màn hình nhấp nháy, vị trí và đoạn cắt văn bản với
PagerTitleStrip
. - Sửa
PagerTabStrip
để tuân thủ khoảng đệm đúng cách khi vẽ dấu gạch dưới.
- Thêm tính năng hỗ trợ cho các lớp
- Hỗ trợ người khuyết tật
- Thêm tuỳ chọn hỗ trợ cho các loại sự kiện chạm và cử chỉ hỗ trợ tiếp cận mới trong
AccessibilityEventCompat
. - Bổ sung tính năng hỗ trợ cho các API hỗ trợ tiếp cận mới trong
ViewCompat
. - Thêm tính năng hỗ trợ cho phương thức
performAccessibilityAction()
vàoViewCompat
.
- Thêm tuỳ chọn hỗ trợ cho các loại sự kiện chạm và cử chỉ hỗ trợ tiếp cận mới trong
- Thêm tính năng hỗ trợ cho các cử chỉ bằng
GestureDetectorCompat
. - Thêm tính năng hỗ trợ để thực hiện các thao tác ở cấp nguyên tử trên các tệp bằng cách sử dụng
Lớp
AtomicFile
. - Thêm tính năng hỗ trợ cho tập hợp đầy đủ các phương thức
make
trongIntentCompat
- Thêm phương thức
trimToSize()
trong Lớp tiện íchLruCache
. - Cập nhật
ConnectivityManagerCompat
để nhận NetworkInfo từCONNECTIVITY_ACTION
truyền tin.
- Giao diện người dùng
- Các thay đổi đối với thư viện hỗ trợ phiên bản 4:
-
- Thêm tính năng hỗ trợ cho các tính năng thông báo ra mắt trong Android 4.1 (API cấp 16) với
các mục bổ sung vào
NotificationCompat
.
- Thêm tính năng hỗ trợ cho các tính năng thông báo ra mắt trong Android 4.1 (API cấp 16) với
các mục bổ sung vào
- Các thay đổi đối với thư viện hỗ trợ phiên bản 4:
-
- Hỗ trợ giao diện người dùng
- Đã thêm hỗ trợ
PagerTabStrip
, cung cấp tính năng nâng cao chức năng khác ngoàiPagerTitleStrip
. - Sửa nhiều lỗi cho
PagerTitleStrip
vàPagerTabStrip
, bao gồm cả tuỳ chọnsetAllCaps
, căn chỉnh tiêu đề, các cải tiến về giao diện, hạn chế chiều rộng tối thiểu và các vấn đề điều hướng bằng thao tác chạm. - Thêm tính năng hỗ trợ định hướng trang
ViewPager
giúp lớpViewPager
cung cấp tính năng hỗ trợ phân trang cho nội dung có một dải cuộn lớn theo chiều ngang, chẳng hạn như bản đồ. - Sửa nhiều lỗi cho
ViewPager
, bao gồm cả kích thước và sự cố thay đổi tập dữ liệu, vị trí trang, tương tác của người dùng, theo dõi cuộn và bàn phím vấn đề điều hướng. - Sửa nhiều lỗi cho
Fragment
, bao gồm lỗi thích hợp xử lýonActivityResult()
khi mảnh mục tiêu không còn tồn tại, gửi sự kiện lựa chọn đến các mảnh vô hình, được cải thiện Hành vi củaFragmentTransaction.replace()
và thêm khả năng xử lý trạng thái tốt hơn cho các mảnh bị di chuyển ra khỏi khung hiển thị. - Bổ sung tính năng hỗ trợ cho phương thức
postOnAnimation()
trongViewCompat
. - Cập nhật
NavUtils
để sử dụng Android 4.1 (API cấp 16) Chức năng di chuyển lên (nếu có).
- Đã thêm hỗ trợ
- Hỗ trợ người khuyết tật
- Cập nhật các lớp hỗ trợ tiếp cận, bao gồm cả
AccessibilityNodeInfoCompat
, để tuân theo các bản sửa lỗi được thực hiện trong Android 4.1 (API cấp 16). - Thêm tính năng hỗ trợ các thao tác cuộn hỗ trợ tiếp cận trong
ViewPager
.
- Cập nhật các lớp hỗ trợ tiếp cận, bao gồm cả
- Cải tiến chung
- Cập nhật
TaskStackBuilder
để phản ánh các thay đổi về API trong Android 4.1 (API cấp 16). - Đã nâng cao
TaskStackBuilder
để cho phép sử dụng từ một Dịch vụ. - Đã thêm hỗ trợ cho
EXTRA_HTML_TEXT
đếnShareCompat
. - Cập nhật
NotificationCompat.Builder
để hỗ trợsetNumber()
. - Đã thêm hỗ trợ trong
ConnectivityManagerCompat
cho phầnisActiveNetworkMetered()
.
- Cập nhật
- Hỗ trợ giao diện người dùng
- Các thay đổi đối với thư viện hỗ trợ phiên bản 4:
-
- Sửa cờ ý định cho các đối tượng
PendingIntent
đã tạo củaTaskStackBuilder
. - Xoá các thuộc tính không dùng đến khỏi các dự án thư viện layoutlayout để đảm bảo Bạn có thể xây dựng thư viện bằng API cấp 7 trở lên.
- Thêm các tệp
.classpath
và.project
cho lướilayout dự án thư viện của chúng tôi.
- Sửa cờ ý định cho các đối tượng
- Các thay đổi đối với thư viện hỗ trợ phiên bản 4:
-
- Thêm
ShareCompat
, cung cấp các lớp trợ giúp để gửi và nhận nội dung cho ứng dụng chia sẻ qua mạng xã hội, bao gồm cả siêu dữ liệu mới cho phân bổ dữ liệu được chia sẻ cho ứng dụng nguồn. Lớp này cũng cung cấp dịch vụ tích hợp tương thích vớiShareActionProvider
mới trong Android 4.0. - Thêm
NavUtils
vàTaskStackBuilder
để hỗ trợ triển khai Nguyên tắc Thiết kế Android cho hoạt động điều hướng. Các Các bổ sung này bao gồm cách triển khai nút Up (Lên) của thanh tác vụ trên các phiên bản. Để tham khảo ví dụ về cách triển khai mẫu này, hãy xem mẫu AppNavigation trong (<em><sdk></em>/samples/<em><platform></em>/AppNavigation
). - Thêm
NotificationCompat.Builder
để cung cấp triển khai khả năng tương thích của lớp trợ giúpNotification.Builder
của Android 3.0 để tạo các thông báo hệ thống chuẩn hoá.
- Thêm
- Các thay đổi đối với thư viện hỗ trợ phiên bản 4:
-
- Các thay đổi đối với ViewPager:
- Thêm tuỳ chọn hỗ trợ bổ sung cho thành phần hiển thị trang trí cho
ViewPager
. Bạn có thể cung cấp khung hiển thị trang trí dưới dạng khung hiển thị con của trình phân trang trong bố cục XML. - Thêm
PagerAdapter.getPageTitle()
để cung cấp chuỗi tiêu đề cho các trang (giá trị mặc định là không) cho mỗi trang. - Thêm
PagerTitleStrip
, một tiêu đề không tương tác dải, có thể được thêm vào làm phần tử con của ViewPager. Nhà phát triển có thể cung cấp văn bản giao diện và màu sắc, cũng như thông tin về kích thước bố cục và trọng lực. - Cập nhật các phương thức
PagerAdapter
để dùng ViewGroup thay vì Khung hiển thị để tránh truyền lớp trong quá trình triển khai bộ chuyển đổi. - Cập nhật
ViewPager
để sử dụng kiểu Trình chạy hành vi hất. - Sửa lỗi cho hoạt động tương tác trên giao diện người dùng và hoạt động tự động thử nghiệm.
- Thêm tuỳ chọn hỗ trợ bổ sung cho thành phần hiển thị trang trí cho
- Hỗ trợ các Mảnh:
- Thay đổi phương thức
setStartDeferred()
thànhsetUserVisibleHint(boolean)
. - Bổ sung thời gian bắt đầu bị hoãn cho các trang ngoài màn hình để cải thiện hiệu suất.
- Thay đổi phương thức
- Hỗ trợ API Hỗ trợ tiếp cận:
- Đã cập nhật
AccessibilityDelegateCompat
phương thức để trả về danh sách trống thay vì giá trị rỗng. - Thêm các API mới mà mẫu phiên bản 4 cần.
- Đã cập nhật
- Các thay đổi đối với ViewPager:
- Các thay đổi đối với thư viện hỗ trợ phiên bản 4:
-
- Hỗ trợ API Hỗ trợ tiếp cận:
- Đã thêm vào
AccessibilityDelegateCompat
để hỗ trợView.AccessibilityDelegate
. - Đã thêm vào
AccessibilityEventCompat
để hỗ trợAccessibilityEvent
. - Đã thêm vào
AccessibilityManagerCompat
để hỗ trợAccessibilityManager
. - Đã thêm vào
AccessibilityNodeInfoCompat
để hỗ trợAccessibilityNodeInfo
. - Đã thêm vào
AccessibilityRecordCompat
để hỗ trợAccessibilityRecord
. - Đã thêm vào
AccessibilityServiceInfoCompat
để hỗ trợAccessibilityServiceInfo
. - Đã thêm vào
ViewGroupCompat
để hỗ trợ bộ tính năng hỗ trợ tiếp cận trongViewGroup
. - Đã chỉnh sửa:
ViewCompat
để hỗ trợ bộ tính năng hỗ trợ tiếp cận trongView
.
- Đã thêm vào
- Các thay đổi đối với ViewPager:
- Hỗ trợ thêm lề giữa các trang.
Bạn có thể cung cấp
Drawable
(không bắt buộc) để lấp đầy lề. - Thêm tính năng hỗ trợ cho
EdgeEffect
. - Bổ sung tính năng hỗ trợ thao tác bằng bàn phím
- Thêm tính năng hỗ trợ để kiểm soát số lượng trang được giữ ở một trong hai bên của trang hiện tại.
- Cải thiện cơ chế vật lý cảm ứng.
- Sửa các lỗi về hành vi trên giao diện người dùng.
- Hỗ trợ thêm lề giữa các trang.
Bạn có thể cung cấp
- Hỗ trợ API Hỗ trợ tiếp cận:
- Các thay đổi đối với thư viện hỗ trợ phiên bản 4:
-
- Đã thêm
EdgeEffectCompat
vào hỗ trợEdgeEffect
. - Thêm
LocalBroadcastManager
để cho phép các ứng dụng dễ dàng đăng ký và nhận ý định trong một ứng dụng mà không cần phát sóng chúng trên toàn cầu. - Thêm tính năng hỗ trợ trong
ViewCompat
để kiểm tra và thiết lập tính năng cuộn quá mức các chế độ dành choView
trên Android 2.3 trở lên. - Các thay đổi đối với Fragment API:
- Thêm các API mới để kiểm soát chế độ hiển thị của các trình đơn mới.
- Thêm API ảnh động tuỳ chỉnh.
- Đã thêm các API trong
FragmentActivity
để giữ lại các API tuỳ chỉnh, dữ liệu bản sao không phải cấu hình. - Nhiều bản sửa lỗi.
- Khắc phục lỗi
Loader
gây ra sự cố trong huỷ cácAsyncTask
khi chạy trên Froyo trở về trước các phiên bản của nền tảng. Dịch vụ hỗ trợ mã này hiện sử dụng phiên bảnAsyncTask
riêng để giữ nguyên trên tất cả các phiên bản nền tảng.
- Đã thêm
- Các thay đổi đối với thư viện hỗ trợ phiên bản 4:
-
- Thêm hỗ trợ cho
Fragment.SavedState
- Thêm
MotionEventCompat
để hỗ trợ các APIMotionEvent
mới hơn - Thêm
VelocityTrackerCompat
để hỗ trợ các APIVelocityTracker
mới hơn - Thêm
ViewConfigurationCompat
để hỗ trợ các APIViewConfiguration
mới hơn - Tất cả API mới (chỉ có trong thư viện hỗ trợ) cho phép bạn tạo giao diện người dùng
với tính năng phân trang theo chiều ngang, cho phép người dùng vuốt sang trái và phải giữa các chế độ xem nội dung. Lớp đến
bao gồm:
ViewPager
: MộtViewGroup
quản lý cho các chế độ xem con mà người dùng có thể vuốt qua.PagerAdapter
: Trình chuyển đổi điền sẵnViewPager
bằng giá trị chế độ xem đại diện cho từng trang.FragmentPagerAdapter
: Phần mở rộng củaPagerAdapter
để lật giữa các mảnh.FragmentStatePagerAdapter
: Phần mở rộng củaPagerAdapter
cho lật giữa các mảnh có sử dụng sự hỗ trợ của thư viện choFragment.SavedState
.
- Thêm hỗ trợ cho
- Thư viện hỗ trợ mới phiên bản 13:
-
- Bao gồm
FragmentPagerAdapter
vàFragmentStatePagerAdapter
để hỗ trợ phân trang theo chiều ngang.Các API này hoàn toàn giống với các API được thêm vào thư viện hỗ trợ v4, nhưng hãy dựa vào các thành phần nền tảng khác trong Android 3.2. Hãy sử dụng thư viện này thay vì phiên bản 4 nếu bạn đang phát triển cho Android 3.2 trở lên (tất cả các API khác trong thư viện phiên bản 4 đều đã có sẵn cấp độ API 13).
- Bao gồm
- Các thay đổi đối với thư viện phiên bản 4:
-
- Hỗ trợ ảnh động theo mảnh
- Khắc phục
Fragment.onActivityResult()
bọ
Bản sửa đổi 22
Tháng 3 năm 2015
Bản sửa đổi 21.0.3
Tháng 12 năm 2014
Bản sửa đổi 21.0.2
Tháng 11 năm 2014
Bản sửa đổi 21.0.1
Tháng 11 năm 2014
Bản sửa đổi 21
Tháng 10 năm 2014
Bản sửa đổi 20
Tháng 7 năm 2014
Bản sửa đổi 19.1.0
Tháng 3 năm 2014
Bản sửa đổi 19.0.1
Tháng 12 năm 2013
Bản sửa đổi 19
Tháng 10 năm 2013
Bản sửa đổi 18
Tháng 7 năm 2013
Bản sửa đổi 13
Tháng 5 năm 2013
Bản sửa đổi 12
Tháng 2 năm 2013
Bản sửa đổi 11
Tháng 11 năm 2012
Bản sửa đổi 10
Tháng 8 năm 2012
Bản sửa đổi 9
Tháng 6 năm 2012
Bản sửa đổi 8
Tháng 4 năm 2012
Bản sửa đổi 7
Tháng 3 năm 2012
Bản sửa đổi 6
Tháng 12 năm 2011
Lưu ý: Tài liệu tham khảo dành cho API thư viện hỗ trợ hiện có sẵn với
tham chiếu khung, ví dụ: android.support.v4.app
.
Bản sửa đổi 5
Tháng 12 năm 2011
Bản sửa đổi 4
Tháng 11 năm 2011
Bản sửa đổi 3
Tháng 7 ngày 2011
Bản sửa đổi 2
Tháng 5 năm 2011
Bản sửa đổi 1
Tháng 3 năm 2011
Bản phát hành đầu tiên có thư viện v4.