Làm cách nào để sử dụng các biểu tượng thích ứng của Android trong Unity?


12

Kể từ API 26, Android sử dụng một cái gì đó gọi là biểu tượng thích ứng.

Khi nhắm mục tiêu API 25 trở xuống, biểu tượng của ứng dụng của tôi trông ổn:

nhập mô tả hình ảnh ở đây

Nhưng khi nhắm mục tiêu API 26+, nó sẽ hiển thị trong một vòng tròn màu trắng như vậy:

nhập mô tả hình ảnh ở đây

  • Làm cách nào tôi có thể nhắm mục tiêu API 26+ trong khi sử dụng các biểu tượng thích ứng của Android?
  • Điều gì xảy ra nếu tôi muốn nhắm mục tiêu API 26+, nhưng không sử dụng các biểu tượng thích ứng của Android?

Nói, tôi nhận thấy bạn đã thêm một tiền thưởng cho câu hỏi này. Có một số thông tin bổ sung mà bạn hy vọng câu trả lời khác có thể có thể thêm vào, ngoài lời giải thích toàn diện của bạn dưới đây không?
DMGregory

@DMGregory Không. Chỉ cần cố gắng để tăng tiếp xúc. Tôi chưa bao giờ tìm thấy một lời giải thích hợp lý về việc triển khai các biểu tượng thích ứng của Unity, vì vậy cố gắng tiết kiệm thời gian cho người khác. Điều đó đang được nói, nếu bạn hoặc bất cứ ai khác có thêm thông tin, nó sẽ được đánh giá cao.
Evorlor

Câu trả lời:


22

Làm cách nào tôi có thể nhắm mục tiêu API 26+ trong khi sử dụng các biểu tượng thích ứng của Android?

Trong Cài đặt trình phát của bạn trong Android trên Unity 2018 trở lên, có một vị trí trong phần Biểu tượng để đặt biểu tượng của bạn. Bạn có thể đặt các biểu tượng Legacy, Round và Adaptive. Các biểu tượng Legacy và Round dành cho API 25 trở xuống. Chỉ cần thêm biểu tượng bạn muốn, alpha và tất cả, và bạn đã hoàn thành. Các biểu tượng thích ứng, cho API 26+, phức tạp hơn một chút.

nhập mô tả hình ảnh ở đây

Biểu tượng thích ứng bao gồm hai phần. Các nềnforeground .

Lý lịch

Nền là nơi bạn đặt nền cho biểu tượng của mình. Hình ảnh này không được có bất kỳ alpha. Nó phải liên tục, vì bạn không có quyền kiểm soát phần nào của nền được hiển thị.

Android xác định cắt xén và dịch ảnh nền. Trong ví dụ dưới đây, nền là hình ảnh màu xanh với lưới màu trắng trên đó. Lưu ý rằng nền trông đẹp như thế nào mặc dù hình vuông được cắt thành hình tròn và nền được di chuyển xung quanh.

nhập mô tả hình ảnh ở đây

Vấn đề xung quanh

Tiền cảnh sẽ là biểu tượng thực tế của bạn. Alpha là cần thiết cho hình ảnh này. 1/6 outter của hình ảnh của bạn có thể được ẩn đằng sau cắt xén. Điều đó có nghĩa là hình ảnh phải được thu nhỏ xuống 66,67% hoặc kích thước ban đầu, trong khi khung vẽ vẫn giữ nguyên kích thước. Trong ví dụ dưới đây, hình ảnh là 432x432 pixel; tuy nhiên, bên trái, bên phải, trên cùng và dưới cùng của hình ảnh là mỗi 72 pixel trong suốt.

nhập mô tả hình ảnh ở đây

Kết quả cuối cùng của tỷ lệ 66,67% của hình ảnh sẽ lấp đầy sprite hoàn hảo trong vòng tròn, trong khi nền hiển thị phía sau các pixel trong suốt.

Trên các thiết bị khác nhau, biểu tượng có thể được chuyển ra bên ngoài khu vực bị cắt do không có bộ đệm. Ví dụ, trong biểu tượng màu xanh ở trên, tiền cảnh xấp xỉ 35% kích thước ban đầu. Nếu nó là 66,67% kích thước ban đầu, thì mặt Android sẽ trượt khỏi tầm nhìn.

Thí dụ

Vì vậy, nếu đây là nền và tiền cảnh của chúng tôi, thì nội dung của tiền cảnh của chúng tôi bằng 2/3 kích thước của nền của chúng tôi:

nhập mô tả hình ảnh ở đâynhập mô tả hình ảnh ở đây

Sau đó, đây là phiên bản chưa cắt xén của biểu tượng của chúng tôi:

nhập mô tả hình ảnh ở đây

Nhưng những gì chúng ta thực sự có thể nhìn thấy trên thiết bị (giả sử Android không làm gì "thích nghi" vào lúc này) là:

nhập mô tả hình ảnh ở đây


Điều gì xảy ra nếu tôi muốn nhắm mục tiêu API 26+, nhưng không sử dụng các biểu tượng thích ứng của Android?

Bạn không thể.


Tôi vẫn không hiểu.

Có lẽ Android hoặc Unity có thể giải thích nó tốt hơn.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.