Đối với các phiên bản Android 3.0 trở lên, tôi muốn gọi một phương thức nhất định. Có cách nào để kiểm tra xem một phương pháp nhất định có sẵn trong Phiên bản Android đang chạy không?Làm cách nào để kiểm tra HoneyComb hoặc phiên bản cao hơn đang chạy và theo đó, hãy gọi một phương thức cho Phiên bản đó?
Để chính xác hơn, MinSDK của tôi là 7 (Android 2.1), TargetSDK là 8 (Android 2.2) và tôi cần kiểm tra nếu HoneyComb Android 3.0 trở lên đang chạy. Tùy thuộc vào điều đó, làm thế nào tôi có thể gọi phương thức HoneyComb đó?
Phần thứ hai của câu hỏi phát sinh, bởi vì chỉ cần gọi phương thức HoneyComb, sẽ không biên dịch, như tôi đang xây dựng dựa trên 2,2.
Cũng đáng nói rằng 'android.os.Build.VERSION_CODES. *' Thành viên được thay thế vào thời gian biên dịch (iirc, phải không?), Vì vậy anh ấy không cần phải lo lắng về 'HONEYCOMB',' HONEYCOMB_MR2' và vì vậy không có sẵn (tức là đã xác định) trên các hệ thống chạy Gingerbread và dưới đây ... anh ấy có thể kiểm tra chúng trên các hệ thống trước đó. – davidcesarino
Tuyệt vời tx, tôi đã giả định sai rằng mục tiêu xây dựng eclipe liên quan đến android: targetVersion. Yipee! – mrd
Điều duy nhất kém hiệu quả hơn là điều này buộc tôi phải thử nghiệm trên máy tính bảng HoneyComb thay vì 2 chiếc điện thoại di động của mình. May mắn thay, nó chỉ là một tuyên bố duy nhất, vì vậy tôi nhận xét nó ra cho đến khi sự phát triển kết thúc. Tôi không bao giờ sử dụng trình mô phỏng để thử nghiệm, để làm chậm ... – mrd