2009-09-15 5 views

Antwort

6

Sie können den Inhalt des Bundles nicht ändern, während Sie ausgeführt werden. Sie haben keinen Schreibzugriff auf dieses Verzeichnis. Ich bin mir nicht sicher, ob es einen Weg gibt, genau das zu tun, was du willst.

3

Ich weiß, dass Sie Ihre info.plist als NSDictionary über NSBundle mit folgendem erhalten können:

NSDictionary* infoDictionary = [[NSBundle mainBundle] infoDictionary]; 

von dort eine mutableCopy der NSDictionary machen könnte und die Werte darin eingestellt. Wenn Sie Fragen zu den Schlüsseln stellen, müssen Sie sicherstellen, dass Sie die Datei NSDictionary und nicht Ihre Datei info.plist abfragen, aber es sollte nicht schwierig sein, all dies in eine Klasse zu kapseln, die beide Probleme für Sie löst.

Wenn Sie die Datei info.plist Ihrer App direkt ändern, kann es Probleme geben (wenn Sie beispielsweise die Datei ändern, schlägt die Code-Signatur fehl und Ihre App wird als beschädigt betrachtet), obwohl ich mir diesbezüglich nicht sicher bin.

+0

Der 'UIRequiresPersistentWiFi' Schlüssel scheint sich in einen größeren' UIApplication' Code einzuklinken Ich kann oder kann nicht wissen, wie der Zugang aussieht, der ein WiFi Dialogfeld anzeigt, wenn eine Netzwerkverbindung benötigt wird. Wenn Sie also eine Kopie der Bundle-Einstellungen vornehmen, kann dies in diesem speziellen Fall nicht weit gehen, obwohl dies möglicherweise für andere Schlüssel gelten kann, wenn deren Verhalten überschrieben werden kann. –

+0

Sie können Ihre info.plist oder eine der Dateien in Ihrem Mainbundle nicht ändern. – mahboudz

0

Sie können die Info.plist nicht ändern. Es scheint keinen von Apple sanktionierten Weg zu geben, wonach Sie suchen.

0

Ich glaube nicht, dass dies funktioniert. [NSBundle mainBundle] hat einen Zeiger auf ein bestimmtes infoDictionary. Auch wenn Sie eine veränderliche Kopie nehmen, würde NSBundle nichts über unsere neue Plattform wissen. Hat jemand schon versucht?

0

Info.plist ist nichts anderes als ein Wörterbuch. Daher kann es bearbeitet werden.

Verwandte Themen