Thứ Ba , Tháng Bảy 24 2018
Lập trình android / VIDEO BÀI GIẢNG / Lập trình Android / Xử lý cấu hình khác nhau của cảm biến trong Android

Xử lý cấu hình khác nhau của cảm biến trong Android

Android không chỉ định một cấu hình tiêu chuẩn cho các thiết bị cảm biến, có nghĩa là các nhà sản xuất thiết bị có thể kết hợp bất kỳ cấu hình cảm biến mà họ muốn vào các thiết bị Android của họ. Kết quả là, các thiết bị có thể bao gồm một loạt các cảm biến trong một loạt các cấu hình.

Ví dụ, Motorola Xoom có ​​một cảm biến áp lực, nhưng Samsung Nexus S không. Tương tự như vậy, các Xoom và Nexus S có con quay hồi chuyển, nhưng HTC Nexus One không. Nếu ứng dụng của bạn dựa vào một loại hình cụ thể của cảm biến, bạn phải đảm bảo rằng các cảm biến hiện diện trên một thiết bị để ứng dụng của bạn có thể chạy thành công. Bạn có hai lựa chọn để đảm bảo rằng một bộ cảm biến được đưa ra là hiện nay trên một thiết bị:

– Phát hiện bộ cảm biến trong thời gian chạy và cho phép hoặc vô hiệu hóa tính năng ứng dụng cho phù hợp.

– Sử dụng bộ lọc Google Play để nhắm mục tiêu các thiết bị cảm biến với cấu hình cụ thể.

Mỗi lựa chọn sẽ được thảo luận trong các phần sau.

Phát hiện cảm biến tại thời gian chạy

Nếu ứng dụng của bạn sử dụng một loại hình cụ thể của cảm biến, nhưng không dựa vào nó, bạn có thể sử dụng khung cảm biến để phát hiện các cảm biến trong thời gian chạy và sau đó vô hiệu hóa hoặc kích hoạt tính năng ứng dụng cho phù hợp. Ví dụ, một ứng dụng chuyển hướng có thể sử dụng các cảm biến nhiệt độ, cảm biến áp lực, cảm biến GPS, và cảm biến địa từ trường để hiển thị nhiệt độ, áp suất khí quyển, địa điểm, và mang la bàn.

Nếu một thiết bị không có một cảm biến áp suất, bạn có thể sử dụng khung cảm biến để phát hiện sự vắng mặt của các cảm biến áp lực trong thời gian chạy và sau đó vô hiệu hóa các phần của giao diện người dùng của ứng dụng hiển thị áp suất. Ví dụ, đoạn code sau để kiểm tra xem có một cảm biến áp lực trên một thiết bị:

Sử dụng các bộ lọc Google Play để nhắm mục tiêu cụ thể cấu hình cảm biến

Nếu bạn đang phát hành ứng dụng của bạn trên Google Play, bạn có thể sử dụng <uses-feature> phần tử trong tập tin manifest của bạn để lọc ứng dụng của bạn từ các thiết bị mà không cần phải cấu hình cảm biến thích hợp cho ứng dụng của bạn. Các <uses-feature> phần tử có một số mô tả phần cứng cho phép bạn lọc các ứng dụng dựa trên sự hiện diện của các bộ cảm biến cụ thể. Các cảm biến bạn có thể liệt kê bao gồm: gia tốc kế, phong vũ biểu, la bàn (trường địa từ), con quay hồi chuyển, ánh sáng, và gần gũi. Sau đây là một ví dụ nhập manifest để lọc các ứng dụng mà không có một gia tốc:

Nếu bạn thêm phần tử này và mô tả để manifest của ứng dụng, người dùng sẽ thấy ứng dụng của bạn trên Google Play chỉ khi thiết bị của họ có một gia tốc.

Bạn nên thiết lập mô tả cho android:required=”true” chỉ khi ứng dụng của bạn hoàn toàn dựa trên một cảm biến cụ thể. Nếu ứng dụng của bạn sử dụng một cảm biến cho một số chức năng, nhưng vẫn chạy mà không có các cảm biến, bạn nên liệt kê các cảm biến trong <uses-feature> yếu tố, nhưng thiết lập các mô tả cho android:required=”false”. Điều này giúp đảm bảo rằng các thiết bị có thể cài đặt ứng dụng của bạn ngay cả khi họ không có mà cảm biến đặc biệt. Đây cũng là một thực hành quản lý dự án tốt nhất giúp bạn theo dõi các tính năng ứng dụng của bạn sử dụng. Hãy nhớ, nếu ứng dụng của bạn sử dụng một cảm biến đặc biệt, nhưng vẫn chạy mà không có các cảm biến, sau đó bạn sẽ phát hiện các cảm biến trong thời gian chạy và vô hiệu hóa hoặc kích hoạt tính năng ứng dụng cho phù hợp.

>>  Quản lý sự kiện cảm biến trong Android

>>  Wifi trong lập trình Android

—————— || ——————
Trung tâm Đào tạo học lập trình Game Mobile với các khoa hoc lap android cơ bản nâng cao tại Hà Nội !

[Total: 1    Average: 5/5]

Bạn nên xem

[Android cơ bản] 19b. Lấy vị trí hiện tại

Để lấy vị trí hiện tại, hãy tạo một client location là đối tượng LocationClient, kết …

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Facebook chat Vietpro