1
我有以下代碼MapKit repsondsToSelector在IOS 4.3.3 setUserTrackingMode
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
}
它的工作原理取決於我是否有指南針或跟蹤標誌預期和iOS中跟蹤用戶位置5
但是,它也適用於我正在測試的其他設備版本4.3.3。它似乎對選擇器做出了響應,實際上它的行爲與iOS 5中的相同。
這是因爲該功能在iOS 4中,但未公開,我因此遭遇拒絕應用程序的風險?
任何人都可以對此有所瞭解嗎? 謝謝 Donie
但我認爲該功能只適用於iOS 5+用戶? API文檔說它是在第5版中引入的。 – d0n13 2012-02-01 02:10:25
您正在使用一個已記錄的API,並且正在執行'respondsToSelector:'檢查來保護沒有IOS 5.0的用戶。你在這裏是一個很好的公民,如果'respondsToSelector'在低於5.0的版本上工作,我認爲這不是你的責任。如果蘋果說,否則我會發現這是不合理的,因爲他們從未在任何文檔中建議檢查設備版本,但他們確實告訴我們應該檢查功能。 – 2012-02-01 03:49:51
謝謝eruainon – d0n13 2012-02-01 12:43:17