0

私はiPhoneアプリを開発してきましたが、iOS 6の最近のリリースで、クライアントはアプリが新しいiOSをサポートするようにするように要求しました(アプリはiOS 5アプリとして開発されました)。

私たちのアプリは、iOS5とiOS6の両方でほぼ正常に動作します(私が今抱えているいくつかの問題を除いて)。ただし、AppDelegateforCLLocationManagerで呼び出しているメソッドに気づきました。

- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation

は非推奨であり、iOS 6では、代わりに次の方法を使用する必要があります。

- (void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations

もちろん、この方法を使用することはできます(そして使用したいと思います)。しかし、私のクライアントは、iOS5とiOS6の両方をサポートするアプリを作成する必要があることを私たちに要求しています(はい、とにかくそれが合理的な「需要」であることを私は知っています)。

CoreLocationがiOS5とiOS6の両方をサポートできるようにするには、コードにどのメソッドを記述する必要がありますか?条件文のような「if」を置く方法はありますか?

これらの単純なばかげた質問でコミュニティを妨害して申し訳ありませんが、Objective-CとiPhoneプログラミングの確かなバックグラウンドがなく、まだ学習中です(Javaの経験はありますが、これは初めてです。 「本物の」アプリを開発する)。

どんな助けでもいただければ幸いです。ありがとうございました。

4

1 に答える 1

2

使用する -(void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation

Deployment Targetターゲットプロパティ->summeryタブで5.0に設定します。iOS5およびiOS6で正常に動作します

于 2012-11-16T06:58:50.010 に答える