2009-04-01 29 views
5

Trong dự án Xcode của tôi, có Info.plist tệp trong tài nguyên. Nó có một thuộc tính như sau:Tôi có phải kiểm tra LSRequiresIPhoneOS để tìm hiểu xem máy ảnh có khả dụng không?

LSRequiresIPhoneOS 

Vì vậy, câu hỏi của tôi là: tôi có phải kiểm tra điều đó không? Những gì tôi muốn là ứng dụng của tôi phát hiện chính nó thời tiết có một máy ảnh hay không. Nếu không, tính năng này sẽ bị tắt và nếu có: Cool! Nó phải hoạt động trên cả iPhone và iPod Touch!

Tôi đoán rằng nếu tôi tắt tính năng này trong Info.plist, tôi vẫn có thể sử dụng các tính năng của iPhone và Apple sẽ không từ chối mã của tôi vì điều đó, đúng không?

Trả lời

5

Bạn nên chọn LSRequiresIPhoneOS (đây là giá trị mặc định). Điều này không ngăn ứng dụng chạy trên iPod Touch. Nó có vẻ khó hiểu, nhưng trong trường hợp này "IPhoneOS" là đề cập đến hệ điều hành chạy trên cả iPhone và iPod Touch (giả sử người dùng đã cài đặt hệ điều hành iPhone trên Touch để nó có thể chạy các ứng dụng của bên thứ 3).

Về việc sử dụng máy ảnh, bạn có thể sử dụng giống như sau cụ thể xem camera có sẵn:

BOOL isCameraAvailable = [UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]; 

Cách tiếp cận này - kiểm tra các chức năng cụ thể - thường là tốt hơn so với sử dụng iPhone Phiên bản hệ điều hành hoặc kiểu phần cứng.

+0

cảm ơn! cách tiếp cận đó có vẻ hợp lý với tôi, tôi biết điều đó từ javascript. câu trả lời rất tốt. cảm ơn một lần nữa! – Thanks

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