2011-12-29 73 views
2

我開發了一款使用xcode 4的iPhone應用程序,該應用程序與iOS 4.3兼容,並且可以順暢地在iPhone 4設備上運行。
我的問題是如何檢查我的應用程序是否與iOS 3兼容。
我沒有任何iOS 3設備來運行應用程序,所以唯一的解決方案是檢查iOS 3的兼容性是模擬器,但我還沒有找到任何選項來在iOS 3模擬器上運行應用程序。 任何建議如何安裝SDK適用於iOS 3.
感謝使iPhone應用程序與iOS兼容3

+4

爲什麼你會打擾支持iOS 3呢? – 2011-12-29 18:35:09

+2

@TomvanderWoerdt - 所以23個bazillion手機在那裏運行ios 3可以運行應用程序。 – Rayfleck 2011-12-29 18:37:35

+0

@Rayfleck我還沒有看到過一個單一的iOS 3設備(iPhone 3G)的年齡。 – 2011-12-29 18:38:41

回答

1

輕按項目,點擊你的目標,點擊摘要,將您的部署目標設置爲3.x.然後,XCode頂部的Scheme下拉菜單會顯示您在3.x模擬器中運行它的選項。

+0

當我點擊左側面板中的目標部分時,沒有選擇總結和部署目標的選項,我使用的是xcode 3.2.6版本。在3.x中感謝 – 2011-12-30 11:42:33

+0

,雙擊項目,選擇build標籤,找到Deployment部分,找到「iOS Deployment Target」這一行,將其設置爲iOS 3.2 – Rayfleck 2011-12-30 17:38:00

+0

謝謝Rayfleck,我已經成功完成了這個任務。 – 2011-12-30 17:43:33

2

確保兼容性的唯一方法是借用或購買運行iOS 3的設備進行測試。模擬器,即使是舊的,也不夠準確,無法確保兼容性。

如果你找不到仍然在任何地方運行3.x的設備,即使只借一個小時,爲什麼還要兼容這麼稀有的設備呢?

+0

感謝您的回覆。是的,我也認爲這樣做的簡單方法是借用iOS 3設備並對其進行測試。 – 2011-12-29 19:20:18

+0

但是你怎麼能說iOS3很少見,你有什麼統計數據? – 2011-12-29 19:21:18

+2

約有1%的設備是 lorean 2011-12-29 20:36:01

2

這是我針對iOS 3清單:

  • 確保您的應用程序運行速度慢的CPU和內存少的罰款。
  • 支持armv6。將armv6添加到體系結構中,從所需的設備功能中移除armv7,並且如果編譯器存在代碼生成錯誤,則禁用armv6上的Thumb。
  • 不使用ARC,在iOS 3上沒有(官方)支持。
  • 檢查是否存在更新的方法(使用respondsToSelector :)或類,而不是在大多數情況下檢查OS版本。
  • 不使用iOS 3上確實存在但是私有API的手勢識別器,並且缺少重要的方法。您需要手動處理觸摸事件。
  • 如果你使用塊,你需要的系統庫動態鏈接,它需要iOS 3.1

下面是一個示例應用程序(我聽說的iOS 3.0不支持動態鏈接。): didFinishLaunchingWithOptions:方法。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{ 
    self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease]; 
    self.viewController = [[[ViewController alloc] initWithNibName:@"ViewController" bundle:nil] autorelease]; 

    if ([self.window respondsToSelector:@selector(setRootViewController:)]) { 
     self.window.rootViewController = self.viewController; 
    } else { 
     [self.window addSubview:self.viewController.view]; 
    } 
    [self.window makeKeyAndVisible]; 
    return YES; 
} 
+0

哎呀!我如何在iPhone上設置我的文章? – hoshi 2011-12-30 03:03:22