Aracılığıyla paylaş


Xamarin.iOS Uygulamalarını Paketlemek için mtouch kullanma

i Telefon uygulamaları uygulama paketleri olarak gönderilir. Bunlar kodunuzu, verilerinizi, yapılandırma dosyalarınızı ve i Telefon uygulamasını öğrenmek için kullandığı bir bildirimi içeren uzantıya .app sahip dizinlerdir.

.NET yürütülebilir dosyasını bir uygulamaya dönüştürme işlemi çoğunlukla, uygulamayı bir pakete dönüştürmek için gereken adımların çoğunu tümleştiren bir araç olan komutuyla mtouch gerçekleştirilir. Bu araç, uygulamanızı simülatörde başlatmak ve yazılımı gerçek bir i Telefon veya iPod Touch cihazına dağıtmak için de kullanılır.

Ayrıntılı Yönergeler

Mtouch(1) el ile sayfamızı mtouch aracının tüm olası kullanımlarıyla kontrol edin.

Yükleme

Mac'te, mtouch Xamarin.iOS ile birlikte gelir. Aşağıdaki dizinde bulunabilir:

/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/bin

mtouch Kullanımı kolaylaştırmak için üst dizinini sisteminizin PATH ortam değişkenine ekleyin.

Örneğin, Bash'te bunu yapmak için ~/.bash_profile dosyanızın sonuna aşağıdaki satırı ekleyin:

export PATH=$PATH:/Library/Frameworks/Xamarin.iOS.framework/Versions/Current/bin

Uyarı

kullanmak mtouchiçin /Library/Frameworks/Xamarin.iOS.framework/Versions/Current/bin'e işaret eden sembolik bir bağlantı olan /Developer/MonoTouch/usr/bin'in varlığına güvenmeyin. Bu sembolik bağlantı yalnızca /Library/Frameworks/... içinde yüklü olmayan eski MonoTouch sürümleriyle uyumluluğu korumak için vardır ve gelecekteki bir sürümde kaybolabilir.

Oluşturma

mtouch komutu kodunuzu üç farklı yolla derleyebilir:

  • Simülatör testi için derleyin.
  • Cihaz dağıtımı için derleme.
  • Yürütülebilir dosyanızı cihaza dağıtın.

Simülatör oluşturma

Kullanmaya başladığınızda en yaygın kullanılan senaryo, uygulamayı Simülatör'de denemeniz olacaktır, bu nedenle kodunu bir simülatör paketinde derlemek için kullanacaksınız mtouch -sim . Bu işlem şu şekilde yapılır:

$ mtouch -sim Hello.app hello.exe

Cihaz için Oluşturma

Cihaza yazılım oluşturmak için, seçeneğini kullanarak mtouch -dev uygulamanızı derleyeceksiniz. Buna ek olarak, uygulamanızı imzalamak için kullanılan sertifikanın adını sağlamanız gerekir. Aşağıda uygulamanın cihaz için nasıl oluşturulduğu gösterilmektedir:

$ mtouch -dev -c "iPhone Developer: Miguel de Icaza" foo.exe

Bu özel durumda, uygulamayı imzalamak için "i Telefon Developer: Miguel de Icaza" sertifikasını kullanıyoruz. Bu adım çok önemlidir, aksi takdirde fiziksel cihaz uygulamayı yüklemeyi reddeder.

Uygulamanızı Çalıştırma

Simülatörde Başlatma

Bir uygulama paketiniz olduğunda simülatörde başlatmak çok basittir:

$ mtouch --sdkroot /Applications/Xcode.app -launchsim Hello.app 

Bayrak ayarlanmazsa --sdkroot varsayılan olarak xcode-select yolu kullanılır ve aşağıdaki uyarıyla sonuçlanır:

örneğin: uyarı MT0061: 'xcode-select --print-path': /Applications/Xcode.app/Contents/Developer tarafından bildirilen sistem Xcode kullanılarak belirtilen Xcode.app (--sdkroot kullanılarak) yok

Yukarıdaki komut satırı aşağıdakine benzer bir çıkış oluşturur:

Launching application
Application launched
PID: 98460
Press enter to terminate the application

Hata ayıklamanıza yardımcı olması için standart çıkışın ve standart hata dosyalarının günlüğünü de tutmanız kesinlikle önerilir. çıktısı Console.WriteLine öğesine stdout, çıkış Console.Error.WriteLine ise ve diğer çalışma zamanı hata iletilerine stderrgider.

Bunu yapmak için ve --stderr bayraklarını kullanın--stdout:

../../tools/mtouch/mtouch --launchsim=Hello.app --stdout=output --stderr=error

Uygulamanız başarısız olursa, sorunu tanılamak için çıkışı ve hatayı görebilirsiniz.

Cihaza Dağıtma

Cihazınıza dağıtmak için cihazınızı Apple'ın Cihazları Yönetme belgesinde açıklandığı gibi sağlamanız gerekir. Cihazınız düzgün bir şekilde sağlandıktan sonra mtouch komutunu kullanarak cihazınıza derlenmiş bir ".app" dağıtabilirsiniz. Bunu şu komutu kullanarak yaparsınız:

$ mtouch —sdkroot /Applications/Xcode.app -installdev=MyApp.app

Bayrak ayarlanmazsa --sdkroot varsayılan olarak xcode-select yolu kullanılır ve aşağıdaki uyarıyla sonuçlanır:

örneğin: uyarı MT0061: 'xcode-select --print-path': /Applications/Xcode.app/Contents/Developer tarafından bildirilen sistem Xcode kullanılarak belirtilen Xcode.app (--sdkroot kullanılarak) yok

Bu adımlar genellikle Mac için Visual Studio tarafından gerçekleştirilir.

Başvuru

Diğer komut satırı seçenekleriyle ilgili ayrıntılar için mtouch(1) el ile sayfasına bakın.