Những tính năng mới trên Android studio 2.3
App Links thì có từ lâu rồi , chức năng này giúp cho user có thể mở ứng dụng của bạn từ một link URL nào đó. Có nghĩa là nếu ở đâu đó có một đường dẫn URL, và khi mà user click vào đường dẫn này, nếu ứng dụng của bạn có định nghĩa App Link rồi, thì thay vì mở một trang web, app của bạn sẽ được gọi ...
App Links thì có từ lâu rồi , chức năng này giúp cho user có thể mở ứng dụng của bạn từ một link URL nào đó. Có nghĩa là nếu ở đâu đó có một đường dẫn URL, và khi mà user click vào đường dẫn này, nếu ứng dụng của bạn có định nghĩa App Link rồi, thì thay vì mở một trang web, app của bạn sẽ được gọi lên.
Nói vậy thì Android Studio 2.3 hỗ trợ gì? Vâng, phiên bản Android Studio mới này hỗ trợ chữ Assistant. Có nghĩa là nó hỗ trợ cho bạn một công cụ trực quan hơn để xây dựng App Links, giúp giảm thời gian code cho bạn.
Và vì các bước config và kiểm thử App Links khá dài, nên mình sẽ dành một bài nói riêng về nó. Nếu các bạn muốn biết sớm về kiến thức này thì có thể đọc tại đây
ConstraintLayout đã được giới thiệu từ Android Studio 2.2. Và quả thực layout mới này mang đến một cách thiết kế giao diện cực kỳ thú vị. Hầu như các bạn chỉ cần kéo-thả, chỉnh sửa, ngắm nghía, rồi chạy thử, vậy là xong, không cần code gì cả. Với Android Studio 2.3 thì editor cho ConstraintLayout được nâng cấp thêm một số “công cụ” sau: – Cho phép bạn chỉ định kích thước của view theo tỉ lệ (ratio). Chẳng hạn bạn có thể chỉ định tỉ lệ này là 2:1, hay 16:9, hay bất kỳ tỉ lệ nào mà bạn thích, bên cạnh việc canh chỉnh theo dp, hay theo các điểm neo, các padding, margintừ version trước. Mình nghĩ việc cập nhật này sẽ rất tốt cho các bạn muốn để vào một ảnh hay một video view.
– Ngoài ra, editor của ConstraintLayout ở phiên bản này này còn hỗ trợ bạn gom các view thành một nhóm theo phương ngang (horizontal) hay theo phương dọc (vertical), rồi chỉ định các thành phần trong nhóm đó co dãn theo kiểu Dàn ra (Spread – Kiểu số 1 và 2 bên dưới), theo Trọng số (Weighted – Kiểu số 3 bên dưới – Như trọng số của LinearLayout vậy), hay theo Gói (Packed – Kiểu số 4 bên dưới). Thông tin chi tiết về ConstraintLayout thì có thể xem thêm ở đây.
Nếu như bạn tạo một project mới từ các phiên bản Android Studio trước đó, thì RelativeLayout sẽ là layout mặc định của các project này. Còn với Android Studio 2.3 thì… thật vui vì ConstraintLayout chính là layout mặc định. Thậm chí khi bạn tạo mới một Activity từ bây giờ, nếu Activity đó có kèm giao diện XML được tạo sẵn, thì XML đó cũng có layout cha chính là ConstraintLayout.
Chắc bạn cũng biết đến cửa sổ Properties? Nếu bạn không biết, thì có thể thấy được cửa sổ này khi thiết kế layout với tab Design. Như hình bên dưới mình có mô phỏng cửa sổ Properties và tab Design trong editor là như thế nào. Với phiên bản cũ thì bạn phải nhấn vào nút View all properties
Với mục này thì mình thấy chỉ có một cập nhật nhỏ thôi cho công cụ Vector Asset Studio. Nếu bạn có nhu cầu muốn biết, thì Vector Asset Studio là một công cụ trong Android Studio, nó xuất hiện khá lâu rồi chứ không phải đến phiên bản 2.3 này mới được hỗ trợ. Công cụ này giúp bạn đưa vào hệ thống các resource dạng vector một cách dễ dàng nhất. Các resource dạng vector là các ảnh có đuôi là SVG hoặc PSD. Các ảnh vector khác các ảnh thường ở chỗ nó gần như không quan tâm đến kích thước ảnh, với một ảnh vector thì khi bạn phóng lớn đến cỡ nào đi nữa thì ảnh vẫn không bị vỡ, điều này hoàn toàn khác với các ảnh thông thường. Mình sẽ có một bài viết đặc biệt về các ảnh vector này sau. Nay với Android Studio 2.3 thì Vector Asset Studio được thêm vào tính năng… tìm kiếm tên file khi bạn vào tìm các resource vector trong thư viện vector của Material có sẵn.
Có thể nói annotation là một trong những công cụ giúp kiểm tra lỗi, một trong số đó có thể bạn cũng đã biết đó là công cụ Lint. Tất cả các công cụ kiểm tra lỗi này mang đến cho bạn một sự ràng buộc nhất định trong việc code, chẳng hạn nó dự báo trước các biến có khả năng null, các kiểu dữ liệu truyền vào không hợp lệ, hay các hàm không tương thích với version của hệ điều hành,… Việc ràng buộc này là hợp lý vì nó giúp bạn tránh các lỗi gây ra khi đưa ứng dụng vào thự tế. Với Android Studio 2.3thì Google đã cung cấp cho chúng ta một annotation đáng giá nữa, đó là @RestrictTo. Và thêm vào tùy chọn otherwise cho annotation cũ @VisibleForTesting. – @RestrictTo: annotation mới này giúp bạn giới hạn quyền truy cập vào trong các package, các class hay các method trong code của bạn. Chẳng hạn như nếu có một hàm (method) nào đó được đánh annotation là @RestrictTo(RestrictTo.Scope.SUBCLASSES), nó sẽ giúp cho hàm đó trở thành không thể truy xuất được từ bên ngoài, mà chỉ được gọi đến từ class con của nó mà thôi, dù cho bạn có set hàm này là public. – @VisibleForTesting: annotation này giúp bạn chỉ định function nào dành cho test mode mà thôi. Giờ đây thì annotation được tăng cường thêm tham số truyền vào otherwise giúp bạn chỉ định mức độ truy xuất đến với các hàm test này. Giống như là cách sử dụng các từ khóa private, public mà bạn hay dùng vậy. Tất cả về cách sử dụng cũng như chức năng của từng loại annotation đã được Google liệt kê khá đầy đủ ở đây.