Quali sono i passaggi completi per creare completamente un pacchetto di app Monotouch dalla riga di comando?

StackOverflow https://stackoverflow.com/questions/9395607

Domanda

Mi piacerebbe sapere qual è la serie completa di passaggi per creare un'app MonoTouch C# composta dall'assembly dell'applicazione principale contenente file xib e un set di assembly di libreria che eventualmente contengono anche file xib.

Stiamo cercando di automatizzare questi passaggi tramite uno script MSBuild adeguato (che MonoTouch deve ancora supportare) per vari motivi che non entrerò in dettaglio, per concentrarmi sulla domanda qui.

Finora, ecco cosa ho scoperto:

1) Compila ogni assembly utilizzando smcs, ad es.

/Developer/MonoTouch/usr/bin/smcs /noconfig 
"/out:/Users/bright/src/MonoTouchAppWithLib/AppLib/bin/Debug/AppLib.dll
"/r:/Developer/MonoTouch/usr/lib/mono/2.1/System.dll"
"/r:/Developer/MonoTouch/usr/lib/mono/2.1/System.Xml.dll"
"/r:/Developer/MonoTouch/usr/lib/mono/2.1/System.Core.dll"
"/r:/Developer/MonoTouch/usr/lib/mono/2.1/monotouch.dll"
/nologo /warn:4 /debug:+ /debug:full /optimize- /codepage:utf8 
"/define:DEBUG"
/t:library "/Users/bright/src/MonoTouchAppWithLib/AppLib/Class1.cs"

2) Compilare le definizioni dell'interfaccia:esegui ibtool su ogni file xib in ogni assembly, ad es

/Developer/usr/bin/ibtool 
--errors --warnings --notices --output-format human-readable-text    
"/Users/bright/src/App/App/ViewController_iPhone.xib" 
--compile "/Users/bright/src/App/App/bin/Debug/App.app/ViewController_iPhone.nib"
--sdk "/Developer/Platforms/iPhoneSimulator.platform/Developer/
SDKs/iPhoneSimulator4.3.sdk"

3) Compila in codice nativo:

/Developer/MonoTouch/usr/bin/mtouch 
-sdkroot "/Applications/Xcode.app/Contents/Developer" 
-v --nomanifest --nosign -sim
"/Users/bright/src/App/App/bin/iPhoneSimulator/Debug/App.app" 
-r "/Users/bright/src/App/AppLib/bin/Debug/AppLib.dll" 
-r "/Developer/MonoTouch/usr/lib/mono/2.1/System.dll" 
-r "/Developer/MonoTouch/usr/lib/mono/2.1/System.Xml.dll" 
-r "/Developer/MonoTouch/usr/lib/mono/2.1/System.Core.dll" 
-r "/Developer/MonoTouch/usr/lib/mono/2.1/monotouch.dll" 
-debug -profiling -nolink -sdk "5.0"
"/Users/bright/src/App/App/bin/iPhoneSimulator/Debug/App.exe"

Tuttavia, non è chiaro come eseguire le seguenti operazioni (tratte dalla finestra di output della build di MonoDevelop) e in quale ordine:

1) Estrai il contenuto incorporato.MonoDevelop restituisce semplicemente questo:

Extracted HelloWorldScreen_iPhone.nib from MtLib.dll
Extracted HelloWorldScreen_iPad.nib from MtLib.dll

2) Aggiorna il manifest dell'applicazione:Non è presente alcuna riga di comando nella finestra di output della build di MonoDevelop.

3) Aggiorna il file di configurazione del debug:Non è presente alcuna riga di comando nella finestra di output della build di MonoDevelop.

4) Aggiorna il file delle impostazioni di debug:Non è presente alcuna riga di comando nella finestra di output della build di MonoDevelop.

E altri passaggi che non ho ancora eseguito, come la firma dell'app e le risorse.

Speriamo di poter ottenere abbastanza informazioni qui per provarci.

È stato utile?

Soluzione

È possibile eseguire, da una finestra di terminale o da un'attività MSBuild, il file /Applications/MonoDevelop.app/Contents/MacOS/mdtool strumento fornito con MonoDevelop.Per esempio.

/Applications/MonoDevelop.app/Contents/MacOS/mdtool -v build -t:Build "-c:Debug|iPhoneSimulator" /path/to/your/app.csproj

Ciò creerà l'applicazione MonoTouch, inclusi tutti i passaggi precedenti e qualsiasi funzionalità futura che verrà aggiunta.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top