2012-04-05 32 views
2

我正在開發一款iPhone應用程序,該應用程序不僅應該在新的iPhone上運行,還應該在舊設備上運行。因此,爲了測試,我確實將加載配置文件加載到舊iPhone 3G(iOS 4.2.1)並將其與我的Mac連接。在Xcode中,我也將iOS部署目標設置爲3.0。使用此設置,該應用程序在iPhone 4上運行,但不在舊iPhone 3G上運行。如何在舊硬件上測試新應用程序? (Xcode 4.3.2帶有基本的SDK iOS 5.1;測試設備是帶有iOS 4.2.1的iPhone 3G)

我知道我也必須將架構從armv7設置爲armv6,但是當我輸入「armv6」時,它會跳回到「armv7」。

那麼,我必須做什麼才能在舊設備上測試新的應用程序?我必須輸入什麼值,以及我必須輸入哪些值?我是否需要爲實際的SDK下載一些插件?

回答

5

我們正在測試iOS 4和3上的應用程序在我的工作中的某些應用程序,通常兩個關鍵點是臂架和架構目標,正如您已經指出的那樣。

首先,如果您有多個目標,請確保您在任何地方都有正確的配置。

其次,你指出armv7「跳」回armv6。 它不應該發生。 確保您在第一行中使用「armv6」正確輸入此字段,並在彈出窗口的第二行上輸入「$(ARCHS_STANDARD_32_BIT)」。

最後,當您試圖推出應用程序時,您是否有任何警告或消息在您的控制檯?

+0

即使輸入「armv6」「$(ARCHS_STANDARD_32_BIT)」,armv7 conf是否仍會回來?看看你的解釋,有很高的機會,它不起作用,因爲該應用程序是爲armv7架構... – Xval 2012-04-05 18:29:09

+0

對不起,我沒有看到你的第一個評論,通常是最終計數的TARGETS條目(默認情況下項目的價值計數,但它可能的價值已經改變,所以我邀請你來檢查)。在那裏你會找到構建目標(通常你將有一個發佈目標的應用程序提交和你用於dev的目標是你需要檢查的目標)。 – Xval 2012-04-05 18:32:33

+0

當我嘗試在iPhone 3G上啓動應用程序時,沒有警告或錯誤消息。它根本不會加載到手機上。在Xcode Header中間的淺藍色顯示中,我可以看到,正在建立,然後我得到消息「Running on ...」(無法讀取剩餘的消息,因爲它消失得這麼快),然後,在少於1秒:「在old_iPhone上完成運行ToDO和項目 - 沒有問題」。 你究竟輸入了「armv6」?你在哪裏輸入它? – 2012-04-05 18:39:29

0

的XCode配備了一個iPhone模擬器......你應該能夠從iOS 3.2測試 - 5.1

如果您還沒有它去更新管理器在Xcode和下載iOS 5.0模擬器。

+1

問題是,模擬器有一個錯誤。我的應用程序在模擬器和我的iPhone 4上行爲不同。請看這裏:http://stackoverflow.com/questions/10030362現在我​​想知道它在我的舊iPhone 3G上的表現。這就是爲什麼我需要在真正的舊硬件上測試應用程序。 – 2012-04-05 17:57:13

相關問題