2012-03-01 27 views
5

Tôi đã tạo một dự án trên Android 4.0 và tôi đã phải đối mặt với một số loại không dùng nữa cho các phiên bản Android mới hơn. Một đường màu đen đã xuất hiện trên tên của những thứ không được chấp nhận. Tuy nhiên, mặc dù đường màu đen và cảnh báo không dùng nữa, tôi vẫn có thể sử dụng các lớp và các dự án không dùng nữa đang chạy thành công. Tôi đã bối rối về sự phản đối. Nếu chúng không được chấp nhận thì tôi vẫn có thể sử dụng chúng như thế nào và việc không dùng nữa có nghĩa là gì? Nếu tôi sử dụng các lớp không được chấp nhận trong dự án của tôi, thì những nhược điểm có thể xảy ra mà người dùng dự án có thể gặp phải là gì?Lớp học không được chấp nhận trên Android

Cảm ơn bạn đã đọc.

Trả lời

6

Không được chấp nhận có nghĩa là chúng có thể bị xóa trong phiên bản nền tảng trong tương lai và vì vậy bạn nên bắt đầu xem xét thay thế việc sử dụng chúng trong mã của bạn.

Nếu họ vừa xóa các loại thì việc xây dựng sẽ bị phá vỡ và mọi người sẽ không hài lòng!

Xét về hiệu quả họ sẽ có đối với người dùng ứng dụng của bạn, sẽ không có bất kỳ hiệu ứng nào. Tuy nhiên, khi bạn cập nhật phần mềm của mình lên phiên bản Android tiếp theo, bạn có thể thấy rằng các loại không dùng nữa không còn ở đó và bản dựng của bạn sẽ bị hỏng.

Wikipedia có một bài viết tốt về nó ở đây: http://en.wikipedia.org/wiki/Deprecation

+0

Và nó có nghĩa là tôi phải rà soát lại kiến ​​thức Android của tôi Tôi đã có trước cho tương lai của dự án của tôi. Cảm ơn Nick. –

0

thường một số loại lớp học không được tán thành nhưng bạn vẫn có thể tiếp tục sử dụng chúng vì để cập nhật các ứng dụng và triển khai những lớp bạn sẽ phải thay đổi mã nguồn. Tuy nhiên, nếu bạn thấy rằng có các lớp không sử dụng sẽ tốt hơn trong các ứng dụng sắp tới không còn sử dụng chúng, cá nhân tôi sử dụng nó với ClipboardManager và sử dụng các ứng dụng mà trước đây nó vẫn hoạt động.

1

Đừng quên rằng có thể lý do khiến các lớp này không được dùng nữa. Điều này có thể ảnh hưởng đến tính bảo mật hoặc tính ổn định của ứng dụng của bạn. Nếu bạn phát hiện ra có lỗi hoặc lỗi, nó có thể sẽ không bao giờ được sửa chữa.

Ngoài ra, hãy kiểm tra xem họ khuyên dùng loại nào, nếu có.

Về lo lắng của bạn về phiên bản Android mới hơn:

phiên bản Android tương thích

ngược Xác nhận here bởi một kỹ sư Android trong một chủ đề về một lớp phản đối khác. Do đó, bạn sẽ có thể sử dụng ứng dụng của mình trên các phiên bản mới hơn.

Nếu bạn muốn ứng dụng của mình tương thích với các phiên bản Android cũ hơn trong khi sử dụng lớp "mới" trong mã của bạn, hãy kiểm tra this related topic.

3

Ngắn câu chuyện ngắn chỉ sử dụng phương pháp không dùng nữa trên các hệ thống chạy quá thấp của API để hỗ trợ phương thức được cập nhật. Bằng cách này, bạn có thể hỗ trợ nhiều loại thiết bị hơn trong khi chỉ sử dụng các phương pháp không dùng nữa khi bạn phải hỗ trợ các thiết bị cũ hơn. Ví dụ mã bên dưới.

int sdk = android.os.Build.VERSION.SDK_INT; 
    if(sdk < android.os.Build.VERSION_CODES.JELLY_BEAN) { 
     setBackgroundDrawable(); // deprecated method for older devices 
    } else { 
     setBackground(); // updated method for newer devices 
    } 

CHÚC MỪNG :)

Các vấn đề liên quan