簡體   English   中英

使iPhone應用程序與iOS 3兼容

[英]Make iPhone app compatible with iOS 3

我已經使用xcode 4開發了一個iPhone應用程序,它與iOS 4.3兼容並且可以在iPhone 4設備上流暢運行。
我的問題是如何檢查我的應用程序是否與iOS 3兼容。
我沒有任何運行該應用程序的iOS 3設備,因此唯一的解決方案是檢查模擬器是否與iOS 3兼容,但是我沒有找到任何在iOS 3模擬器上運行該應用程序的選項。 關於如何安裝iOS 3 SDK的任何建議。
謝謝

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

如果您找不到在任何地方仍在運行3.x的設備,甚至只是借了一個小時,為什么還要擔心如此稀有的兼容性呢?

這是我的iOS 3清單:

  • 確保您的應用在CPU速度慢和內存少的情況下可以正常運行。
  • 支持armv6。 如果您的編譯器有代碼生成錯誤,則將armv6添加到體系結構中,從所需的設備功能中刪除armv7,並禁用armv6。
  • 不要使用ARC,iOS 3不(正式)支持whick。
  • 在大多數情況下,請檢查是否存在較新的方法(使用responsToSelector :)或類,而不是檢查操作系統版本。
  • 不要使用在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;
}

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

iOS開發人員中心上,有一個指向Xcode 3的下載鏈接。其中可能包括iOS 3。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM