1
I持って、次のコードMapKit repsondsToSelector 4.3.3
BOOL ios5 = [mapview respondsToSelector:@selector(setUserTrackingMode:animated:)];
if(ios5)
{
if(compass && tracking)
[mapview setUserTrackingMode:MKUserTrackingModeFollowWithHeading animated:YES];
else if (tracking)
[mapview setUserTrackingMode:MKUserTrackingModeFollow animated:YES];
else
[mapview setUserTrackingMode:MKUserTrackingModeNone animated:YES];
}
else
{
// Do it the version 4.0 way
}
それ私はコンパスを持っているかにフラグを追跡するかどうかに応じて予想および5
IOSのユーザの位置を追跡するように動作しますしかし、私がテストしている他のデバイスであるバージョン4.3.3でも動作します。セレクタに反応して、実際にはiOS 5と同じように動作しているようです。
これは機能がiOS 4で公開されていないためで、その理由で拒否される危険性がありますか?
誰もがこれにいくつかの光を当てることができますか? おかげ Donie
しかし、この機能はiOS 5以降のユーザーだけが利用できると思っていましたか? APIドキュメントには、バージョン5で導入されたと書かれています。 – d0n13
文書化されているAPIを使用していて、IOS5.0を持たないユーザを保護するために 'respondsToSelector:'チェックを行っています。あなたはここで良い市民であり、 'respondsToSelector'が5.0より下のバージョンで動作するなら、あなたの責任とは思わないでしょう。私は、Appleが別の言葉でデバイスのバージョンをチェックするようアドバイスしたことがないので、それが不合理であると思うが、代わりに機能を確認する必要があると私たちに伝えている。 –
ありがとうeruainon – d0n13