title: Developing apps for multiple iOS version
body: <p>I am testing an app on an iPhone 4 with iOS 5.1 and an iPad 4 with iOS 6.0. I looked around and surprisingly did not find similar questions:</p>
  
  <p>1- My app has some methods that have been deprecated in iOS 6.0 so I believe I have to build some if/then conditions to test for system version using: [[UIDevice currentDevice] systemVersion], and then use the version appropriate methods. Is that the most efficient way?</p>
  
  <p>2- My understanding is, with only one target, the "project" Deployment Target and the "Targets" deployment target serve the same purpose. And I need to have one of them or both as iOS 5.1 since that is the minimum iOS supported. What is confusing is that if the target is built based on iOS 5.1, how would it run on the iPad4 with iOS 6.0:</p>
  
  <ul>
  <li><p>Does the iPad OS checks for target versions before running or just tries to run the code and it happens that the iOS 5.1 target does not have any code that the 6.0 is incompatible with?</p></li>
  <li><p>Even if that is the case though, how could a 5.1 target support 6.0 methods that I built to conditionally replace deprecated methods? </p></li>
  </ul>
  
  <p>Many thanks!   </p>