我剛剛嘗試將OSX應用程序轉換爲沙盒應用程序。該應用程序支持10.5以上,並具有手動內存管理。在轉換之後,我通過在Xcode 4.3中運行它進行了測試。OS X應用程序測試沙盒侵犯
控制檯現在不顯示違規。是否足以斷定該應用程序沒有沙箱侵犯,或者在將應用程序提交給Mac App Store之前是否有任何其他流程來查找沙盒違規?另外,保留手動內存管理還是應該啓用ARC?
謝謝。
我剛剛嘗試將OSX應用程序轉換爲沙盒應用程序。該應用程序支持10.5以上,並具有手動內存管理。在轉換之後,我通過在Xcode 4.3中運行它進行了測試。OS X應用程序測試沙盒侵犯
控制檯現在不顯示違規。是否足以斷定該應用程序沒有沙箱侵犯,或者在將應用程序提交給Mac App Store之前是否有任何其他流程來查找沙盒違規?另外,保留手動內存管理還是應該啓用ARC?
謝謝。
要檢查應用程序二進制是沙箱:
codesign -dvvv --entitlements :- executable_path
To observe sandbox violations during testing:
打開控制檯應用程序(在/ Applications/Utilities中/可用),並確保所有郵件被選中側邊欄。
在控制檯窗口的篩選字段中,輸入sandboxd
以僅顯示應用沙盒違例。
sandboxd
是報告沙盒違例的App Sandbox守護程序的名稱。相關的消息,顯示在控制檯中,類似於以下內容:
您還可以使用Xcode的組織者的驗證嚮導無需提交應用程序的Mac應用程序執行App Store的驗證檢查商店。這可能會執行一些沙箱檢查。
產品>歸檔>管理器>「驗證...」
此外,有確定離開手動內存管理,因爲它是,還是應該ARC必須啓用?
是的,可以使用「手動保留釋放」(MRR)而不是自動引用計數(ARC)來發布新應用程序,這很好。