2011-08-05 21 views
43

Tôi hiện đang có ứng dụng được nhắm mục tiêu ở android 2.3 (api level 10), nhưng đã nghĩ rằng có thể là những người sử dụng Android 2.1/2.2 trở lên sẽ không thể xem ứng dụng trên thị trường. Vì vậy, tôi nghĩ rằng việc sử dụng api cấp 3 sẽ là tốt nhất để sử dụng, nhưng tôi không biết liệu điều này có thể làm cho các yếu tố nhất định trong ứng dụng của tôi hoạt động kém hơn hay không, và có thể buggier, vì nó thực sự sử dụng android cũ mã. Có cách nào tốt để tìm hiểu xem tôi nên sử dụng cấp API nào và làm cách nào để chuyển đổi ứng dụng của mình sang cấp đó?Chọn mức API phù hợp cho ứng dụng Android của tôi

Trả lời

41

Bạn có thể tìm thấy bảng phân tích các phiên bản Android khác nhau đang sử dụng here. Hiện tại, nếu bạn nhắm mục tiêu 2.1 (API 7), bạn sẽ chỉ bỏ lỡ khoảng 3% thị trường. Nhắm mục tiêu 2.2 sẽ bỏ lỡ chỉ dưới 20%, hoặc một phần năm của thị trường.

Để chuyển đổi ứng dụng, bạn có thể kiểm tra xem mọi thứ cấp API có sẵn trong số . Bạn sẽ thấy hộp kiểm và trình đơn thả xuống ở trên cùng bên phải của khu vực duyệt cho phép bạn lọc theo cấp API - đó là một cách để giúp chuyển đổi. Cách khác là đặt các phiên bản SDK tối thiểu và mục tiêu sẽ giúp Eclipse biết những gì cần khiếu nại trong mã của bạn. Cách dễ nhất để xem liệu có điều gì đó cần chuyển đổi không, tuy nhiên, là để mô phỏng và thử nghiệm.

EDIT: Trình đơn thả xuống cấp API được di chuyển từ trên cùng bên phải sang trên cùng bên trái, trong danh sách API.

2

Nếu bạn có

<uses-sdk android:minSdkVersion="4" android:targetSdkVersion="10"/> 

sau đó nó sẽ xuất hiện ngay xuống 1.6, nhưng chắc chắn rằng bạn không sử dụng antyhing rằng họ không có trong API của họ

chỉnh sửa: Đừng bận tâm với 3! :)

2

Tôi bắt đầu phát triển 1.5, nhưng sớm nhận ra rằng chỉ một tỷ lệ nhỏ người vẫn chạy 1.5. Tôi thường phát triển ở cấp độ 2.1, và để nó ở đó (trừ khi bạn cần các tính năng ở cấp độ cao hơn). Để thay đổi nó, mở thuộc tính dự án của bạn, và trong khi tôi không có môi trường của tôi mở, có một tùy chọn Android, nơi bạn sẽ chọn mức API bạn muốn nhắm mục tiêu.

14

This graph có thể giúp bạn quyết định.

+2

Tôi muốn giới thiệu hỗ trợ phiên bản 2.1 trở lên bây giờ. ('android: minSdkVersion =" 7 "') – pqn

+0

Tại sao biểu đồ này không hiển thị Honeycomb? Không có gì giữa 2.3.7 và 4.0.3. –

6

Bạn nên xem xét khả năng tương thích ngược và nói chung, bạn nên biên dịch ứng dụng của mình dựa trên phiên bản thấp nhất có thể của nền tảng mà ứng dụng của bạn có thể hỗ trợ.

Bạn có thể xác định phiên bản nền tảng thấp nhất có thể bằng cách biên dịch ứng dụng so với mục tiêu xây dựng liên tục thấp hơn. Sau khi bạn xác định phiên bản thấp nhất, bạn nên tạo một AVD bằng cách sử dụng phiên bản nền tảng tương ứng (và Cấp API) và kiểm tra đầy đủ ứng dụng của bạn. Đảm bảo khai báo thuộc tính android: minSdkVersion trong tệp kê khai của ứng dụng và đặt giá trị của nó thành Cấp API của phiên bản nền tảng. Chúc may mắn!

0

Cấp API tốt nhất chứa sau 1) API tốt nhất bao gồm 100% thị trường nhưng tất cả đều không hoàn hảo nên ứng dụng của chúng tôi phải được bao phủ ít nhất 90% với tất cả các thiết bị.

2) Chúng tôi phải quan tâm đến các vấn đề tương thích ngược và mã của chúng tôi sẽ tự điều chỉnh cho các phiên bản sắp tới.

3) Sử dụng SDK Android mới là yêu cầu sử dụng bất kỳ API mới nào được thêm ở cấp đó. Cần phải nhấn mạnh ... Cuối cùng, quyết định kinh doanh về việc hỗ trợ thêm 3% thiết bị có đáng để phát triển và thử nghiệm hay không. 4) kiểm tra liên kết này https://developer.android.com/guide/practices/compatibility.html#defined

5) Cuối cùng chọn API tốt nhất mà bạn sẽ tìm thấy API tốt nhất