2012-09-19 23 views
20

Bu (simülatörde test, vs) dev modunda çalıştığını fark etmiş:Xcode DEBUG Modu - ne zaman açık/kapalı?

#ifdef DEBUG 
    //do stuff 
#endif 

Ama arşiv ve uygulama hala olmama rağmen DEBUG modunda hareket etmez testi kurar dağıtırken geliştirici profili ile bina. Dağıtım profiliyle oluşturup Apple'a göndermediğimde DEBUG modunun her zaman böyle olmasını isterim. Bu yüzden de bir set gerekiyor

- (BOOL)isUpgradePurchased 
{ 
#ifdef DEBUG 
    return YES; 
#endif 

//do the real stuff to determine if purchased and return YES or NO 
} 

: Örneğin

, gönderme testi kurar, ben yapmak istemiyorum insanlar bir uygulama içi satın alma satın yüzden böyle bir şey yapmak önişlemci makro DEBUG = "Sürüm" için 1 =?

cevap

14

enter image description here

zaman arşivleme Ayrıca "Düzenleme Programı" Debug Yapılandırma inşa etmek olabilir. XCode'daki "Şemayı Düzenle" iletişim kutusunun ekran görüntüsüne bakın.

+0

Bu yüzden Arşiv Oluşturma Yapılandırması'nda "Sürüm" 'i "Hata Ayıkla" olarak değiştirebilmeli miyim? – soleil

+0

evet, ancak Apple'a göndermeden önce onu serbest bırakmak zorundasınız. – msk

+0

AppStore için tamamen farklı bir planım var. – soleil

16

Xcode'un geçerli sürümü, DEBUG makrosunu otomatik olarak yeni projelerde ayarlar. Ancak bunu yalnızca Debug oluşturma modu için yapar.

Bunu projelerinizde Yapı Ayarları'nı düzenleyebilirsiniz.

DEBUG birini düzenlemek yerine yeni, ayrı bir makro eklemenizi öneririm. Belki sadece DISTRIBUTION veya DEPLOYMENT makrosunu serbest bırakma modu için ekleyebilirsiniz.

enter image description here

+0

Ama aynı zamanda sadece Release Mode için DEBUG = 1 diyemem? – soleil

+3

Yapabilirsiniz. Ama bu tür amaçlarını yener. – DrummerB

İlgili konular