2012-06-12 17 views
7

Tôi muốn tạo một ứng dụng Android có thể được sử dụng trên 2.3.3 tất cả các cách thông qua 4.0.3. Tôi muốn sử dụng các thư viện hỗ trợ, vì vậy mà tôi có thể sử dụng mảnh vỡ vvCấp API nào để sử dụng với Thư viện hỗ trợ trong Android?

Tôi đặt mục tiêu xây dựng API cấp 10 (2.3.3) hoặc để tôi đặt nó là (4.0. 3)?

+0

từ: http://developer.android.com/guide/appendix/api-levels.html khi bạn muốn chạy trên (2.3.3) để sử dụng cấp API 10 và cho các đoạn sử dụng [thư viện tương thích] (http://developer.android.com/sdk/compatibility-library.html) http://developer.android.com/sdk/compatibility-library.html http://android-er.blogspot.in/2011/ 12/example-of-using-compatibility-package.html –

Trả lời

5

Câu trả lời ở đây có phần gây hiểu nhầm, vì bạn không cần cần để đặt targetSdkVersion="15" để ứng dụng của bạn được sử dụng tất cả lên tới phiên bản 4.0.3. Chỉ việc đặt minSdkVersion="10" của bạn sẽ cho phép bạn sử dụng ứng dụng của mình trên tất cả các thiết bị chạy Gingerbread trở lên.

Thuộc tính targetSdkVersion chỉ định cấp API mà ứng dụng được thiết kế để chạy. Tốt hơn là bạn sẽ muốn giá trị của nó tương ứng với SDK phát hành gần đây nhất ("15", tại thời điểm bài đăng này). Tuy nhiên, nói đúng ra, giá trị của nó phải được cung cấp bởi số phiên bản SDK lớn nhất mà bạn đã thử nghiệm ứng dụng của mình.

Lợi ích của mức cao hơn targetSdkVersion là nó sẽ cho phép bạn tận dụng các tính năng mới sáng bóng trong API được phát hành gần đây. Ví dụ: nếu trong trường hợp này bạn không đặt targetSdkVersion, nó sẽ mặc định là minSdkVersion (hiện tại là "10"). Do đó, ứng dụng của bạn sẽ không thể sử dụng các chủ đề giao diện người dùng mới (tức là Theme.Holo) được giới thiệu trong HoneyCombICS và có thể bị buộc vào chế độ tương thích (xấu xí và làm cho ứng dụng của bạn trông cũ và kém được bảo trì).

+0

+1 vì đây là giải thích tốt hơn nếu câu trả lời của tôi sai lệch. – Guykun

+0

"Câu trả lời ở đây có phần gây hiểu lầm"? bạn có thể cho tôi biết có gì sai với câu trả lời của tôi ........................? –

+2

Tôi thậm chí không chắc "câu trả lời" của bạn là gì ... nó chỉ là một loạt các liên kết? –

2

Bạn nên thiết lập xây dựng mục tiêu của bạn đến 15, nhưng SDK tối thiểu đến 10

Bằng cách này, các thư viện hỗ trợ sẽ vẫn làm việc trên 10, nhưng với sự phản ánh bạn cũng sẽ có thể truy cập trực tiếp các tính năng phiên bản API cao nếu bạn muốn.

+0

là những gì tôi có trong tệp kê khai của mình và tôi đã xây dựng dựa trên 4.0 .3. Nhận ra rằng tôi cần thiết để có thể mã chống lại 4 apis khi tôi bắt đầu xây dựng một giải pháp hành động. –