Aracılığıyla paylaş


Xamarin.iOS'ta IPA Desteği

Bu makalede, test veya şirket içi uygulamaların Şirket İçi dağıtımı için Geçici dağıtım kullanılarak bir uygulama dağıtmak için kullanılabilecek bir IPA dosyasının nasıl oluşturulacağı anlatılır.

Bir uygulamayı iTunes App Store aracılığıyla satışa çıkarmanın yanı sıra, aşağıdaki kullanımlar için dağıtılabilir:

  • Geçici Test — Bir iOS uygulaması, Alfa ve Beta test amacıyla en fazla 100 kullanıcıya (belirli iOS cihaz UUID'leri tarafından tanımlanır) dağıtılabilir. Bu şekilde dağıtma hakkında daha fazla bilgi için Apple geliştirici hesabınıza test iOS cihazları ekleme hakkında ayrıntılı bilgi için Geliştirme için iOS Cihazı Sağlama belgemize ve Geçici kılavuzuna bakın.
  • Şirket İçinde / Kurumsal Dağıtım — Bir iOS uygulaması, Apple'ın Geliştirici Kurumsal programının üyeliğini gerektiren bir şirket içinde dahili olarak dağıtılabilir. In House Distribution hakkında daha fazla bilgi, In House Distribution kılavuzunda ayrıntılı olarak yer alır.

Her iki durumda da, doğru Dağıtım Sağlama Profili ile bir IPA paketi (özel bir zip dosyası türü) oluşturulup dijital olarak imzalanmalıdır. Bu makale, Mac veya Windows pc'de iTunes kullanarak IPA paketini derlemek ve paketi bir iOS cihazına yüklemek için gereken adımları kapsar.

iTunesMetadata.plist Dosyası

iTunes Bağlan'da bir iOS uygulaması oluşturulduğunda (iTunes App Store'dan satışa veya ücretsiz sürüme), geliştirici uygulamanın türü, alt türü, telif hakkı bildirimi, desteklenen iOS cihazları ve gerekli cihaz özellikleri gibi bilgileri belirtebilir.

Geçici veya Şirket İçi dağıtım yoluyla sunulan iOS uygulamalarının, iTunes'da ve kullanıcının cihazında görülebilmesi için bu bilgileri desteklemenin bir yolunun olması gerekir. Varsayılan olarak, projenizi her derlediğinizde küçük bir iTunesMetadata.plist dosyası oluşturulur ve proje dizininde depolanır.

Bir dağıtıma ek bilgi sağlamak için özel bir iTunesMetadata.plist de oluşturulabilir. Bu dosyanın içeriği ve nasıl oluşturulacağı hakkında daha fazla bilgi edinmek için lütfen iTunesMetadata.plist İçeriği ve iTunesMetadata.plist Dosyası Oluşturma belgelerimize bakın.

iTunes Artwork

Uygulamanızı App Store dışı araçlarla teslim ederken, uygulamanızı iTunes'da temsil etmek için kullanılacak bir 512x512 ve 1024x1024 görüntüsü de eklemeniz gerekir.

iTunes Artwork'ı belirtmek için aşağıdakileri yapın:

  1. Düzenlemek üzere açmak için Çözüm Gezgini Info.plist dosyasına çift tıklayın.
  2. Düzenleyicinin iTunes Artwork bölümüne kaydırın.
  3. Eksik resimler için düzenleyicideki küçük resme tıklayın, Dosya Aç iletişim kutusundan istediğiniz iTunes resminin resim dosyasını seçin ve Tamam veya düğmesine tıklayın.
  4. Uygulamanız için tüm gerekli görüntüler belirtilene kadar bu adımı yineleyin.

Daha fazla ayrıntı için lütfen iTunes Artwork belgelerine bakın.

IPA oluşturma

IPA oluşturma işlemi artık yeni yayımlama iş akışında yerleşik olarak yer alır. Bunu yapmak için aşağıdaki yönergeleri izleyerek uygulamanızı arşivleyip imzalayın ve IPA'nızı kaydedin.

Platformlar arası çözüm için bir IPA oluşturmaya başlamadan önce, başlangıç projeniz olarak iOS projesini seçtiğinizden emin olun:

Selected the iOS project as the startup project

Arşivinizi oluşturma

IPA oluşturmak için uygulamamızın yayın derlemesinin bir arşivinin oluşturulması gerekir. Bu Arşiv, uygulamamızı ve bu uygulama hakkında tanımlayıcı bilgileri içerir.

  1. Yayın | öğesini seçin Mac için Visual Studio cihaz yapılandırması: !

    Select the Release | Device configuration

  2. Oluştur menüsünde Yayımlama için Arşivle'yi seçin:

    Select Archive for Publishing

  3. Arşiv oluşturulduktan sonra Arşivler görünümü görüntülenir:

    The Archives view will be displayed

Uygulamanızı İmzalayın ve Dağıtlayın

Arşiv için uygulamanızı her derlediğinizde, otomatik olarak Arşivler Görünümü açılır ve tüm arşivlenmiş projeler görüntülenir; çözüme göre gruplandırılır. Varsayılan olarak, bu görünüm yalnızca geçerli, açık çözümü gösterir. Arşivleri olan tüm çözümleri görmek için Tüm arşivleri göster seçeneğine tıklayın.

Oluşturulan tüm hata ayıklama bilgilerinin daha sonraki bir tarihte simgelenebilmesi için müşterilere dağıtılan arşivlerin (Geçici veya Şirket İçi dağıtımlar) tutulması önerilir.

App Store olmayanlar için iTunesMetadata.plist dosyasını derlediğini ve arşivde bulunurlarsa iTunes resim kümesinin IPA'nıza otomatik olarak dahil olacağını unutmayın.

Uygulamanızı imzalamak ve dağıtıma hazırlamak için:

  1. Aşağıda gösterilen İmzala ve Dağıt... düğmesini seçin:

    Select Sign and Distribute...

  2. Bu işlem yayımlama sihirbazını açar. Bir paket oluşturmak için Geçici veya Kurumsal (Şirket İçi) dağıtım kanalını seçin:

    Select the Ad-Hoc or Enterprise In-House distribution

  3. Sağlama Profili ekranında, imzalama kimliğinizi ve ilgili sağlama profilinizi seçin veya başka bir kimlikle yeniden imzalayın:

    Select the signing identity and corresponding provisioning profile

  4. Paketinizin ayrıntılarını doğrulayın ve Yayımla'ya tıklayın:

    Verify the package details

  5. Son olarak, IPA'nızı makinenize kaydedin:

    Save the IPA to the computer

Komut Satırı aracılığıyla derleme (Mac'te)

CI ortamında olduğu gibi bazı durumlarda, komut satırı aracılığıyla IPA oluşturmanız gerekebilir. Bunu başarmak için aşağıdaki adımları izleyin:

  1. Proje Seçenekleri > iOS IPA Seçenekleri > iTunesArtwork görüntülerini içerir seçeneğinin işaretlendiğinden ve Geçici/kurumsal paket (IPA) oluştur seçeneğinin işaretli olduğundan emin olun:

    Include iTunesArtwork images and Build ad-hoc/enterprise package IPA is checked

    İsterseniz, bunun yerine .csproj dosyasını bir metin düzenleyicisinde düzenleyebilir ve uygulamayı derlemek için kullanılacak yapılandırmaya karşılık gelen iki özelliği PropertyGroup el ile ekleyebilirsiniz:

    <BuildIpa>true</BuildIpa>
    <IpaIncludeArtwork>false</IpaIncludeArtwork>
    
  2. İsteğe bağlı bir iTunesMetadata.plist dosyası dahil ediyorsanız,... düğmesine tıklayın, listeden seçin ve Tamam düğmesine tıklayın:

    Select iTunesMetadata.plist from the list

  3. Msbuild'i doğrudan çağırın ve bu özelliği komut satırına geçirin:

    /Library/Frameworks/Mono.framework/Commands/msbuild YourSolution.sln /p:Configuration=Ad-Hoc /p:Platform=iPhone /p:BuildIpa=true
    

IPA Konumunu Özelleştirme

.ipa dosya çıkış konumunu özelleştirmeyi kolaylaştırmak için yeni bir MSBuild özelliği IpaPackageDir eklendi. Özel bir konuma ayarlanırsa IpaPackageDir , .ipa dosyası varsayılan zaman damgası uygulanmış alt dizin yerine bu konuma yerleştirilir. Bu, Sürekli Tümleştirme (CI) derlemeleri için kullanılanlar gibi düzgün çalışması için belirli bir dizin yolunu kullanan otomatik derlemeler oluştururken yararlı olabilir.

Yeni özelliği kullanmanın birkaç olası yolu vardır:

Örneğin, .ipa dosyasını eski varsayılan dizine (Xamarin.iOS 9.6 ve daha düşük sürümlerde olduğu gibi) çıkarmak için $(OutputPath) özelliğini aşağıdaki yaklaşımlardan birini kullanarak ayarlayabilirsinizIpaPackageDir. Her iki yaklaşım da IDE derlemelerinin yanı sıra msbuild, xbuild veya mdtool kullanan komut satırı derlemeleri de dahil olmak üzere tüm Birleşik API Xamarin.iOS derlemeleriyle uyumludur:

  • İlk seçenek, bir MSBuild dosyasındaki IpaPackageDir bir <PropertyGroup> öğenin içinde özelliğini ayarlamaktır . Örneğin, aşağıdakileri iOS uygulama projesi .csproj dosyasının altına (kapanış </Project> etiketinden hemen önce) ekleyebilirsiniz<PropertyGroup>:

    <PropertyGroup>
        <IpaPackageDir>$(OutputPath)</IpaPackageDir>
    </PropertyGroup>
    
  • Daha iyi bir <IpaPackageDir> yaklaşım, .ipa dosyasını derlemek için kullanılan yapılandırmaya karşılık gelen bir öğeyi var olanın <PropertyGroup>altına eklemektir. Bu, projeyi iOS IPA Seçenekleri proje özellikleri sayfasında planlı bir ayar ile gelecekteki uyumluluk için hazırlayacağınız için daha iyidir. .ipa dosyasını derlemek için şu anda yapılandırmayı kullanıyorsanızRelease|iPhone, güncelleştirilmiş özellik grubunun tamamı aşağıdakine benzer olabilir:

    <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhone' ">
        <Optimize>true</Optimize>
        <OutputPath>bin\iPhone\Release</OutputPath>
        <ErrorReport>prompt</ErrorReport>
        <WarningLevel>4</WarningLevel>
        <ConsolePause>false</ConsolePause>
        <CodesignKey>iPhone Developer</CodesignKey>
        <MtouchUseSGen>true</MtouchUseSGen>
        <MtouchUseRefCounting>true</MtouchUseRefCounting>
        <MtouchFloat32>true</MtouchFloat32>
        <CodesignEntitlements>Entitlements.plist</CodesignEntitlements>
        <MtouchLink>SdkOnly</MtouchLink>
        <MtouchArch>;ARMv7, ARM64</MtouchArch>
        <MtouchHttpClientHandler>HttpClientHandler</MtouchHttpClientHandler>
        <MtouchTlsProvider>Default</MtouchTlsProvider>
        <PlatformTarget>x86&</PlatformTarget>
        <BuildIpa>true</BuildIpa>
        <IpaPackageDir>$(OutputPath)</IpaPackageDir>
    </PropertyGroup>
    

msbuild veya xbuild komut satırı derlemeleri için alternatif bir teknik, özelliğini ayarlamak IpaPackageDir için bir /p: bağımsız değişken eklemektir. Bu durumda, msbuild'in komut satırında geçirilen ifadeleri genişletmediğini$(), bu nedenle söz dizimini $(OutputPath) kullanmanın mümkün olmadığını unutmayın. Bunun yerine tam yol adı sağlamanız gerekir. Mono'nun xbuild komutu ifadeleri genişletir$(), ancak xbuild, msbuild'in platformlar arası sürümüne göre kullanım dışı bırakıldığı için tam yol adı kullanılması tercih edilir.

Bu yaklaşımı kullanan tam bir örnek, Windows'ta aşağıdakine benzer olabilir:

msbuild /p:Configuration="Release" /p:Platform="iPhone" /p:ServerAddress="192.168.1.3" /p:ServerUser="macuser" /p:IpaPackageDir="%USERPROFILE%\Builds" /t:Build SingleViewIphone1.sln

Veya Mac'te aşağıdakiler:

msbuild /p:Configuration="Release" /p:Platform="iPhone" /p:IpaPackageDir="$HOME/Builds" /t:Build SingleViewIphone1.sln

iTunes kullanarak IPA yükleme

Sonuçta elde edilen IPA Paketi, iOS cihazlarına yüklenmek üzere test kullanıcılarınıza teslim edilebilir veya Kurumsal dağıtım için gönderilebilir. Hangi yöntem seçilirse seçin, son kullanıcı paketi iTunes uygulamasına IPA dosyasına çift tıklayarak (veya açık iTunes penceresine sürükleyerek) Mac veya Windows bilgisayarına yükler.

Yeni iOS uygulaması, sağ tıklayıp uygulama hakkında bilgi alabileceğiniz Uygulamalarım bölümünde gösterilir:

Kullanıcı artık yeni iOS uygulamasını yüklemek için iTunes'u cihazıyla eşitleyebilir.

Özet

Bu makalede, Xamarin.iOS uygulamasını App Store dışı bir derlemeye hazırlamak için gereken kurulum ele alınmıştır. Bir IPA Paketinin nasıl oluşturulacağını gösterdi ve sonuçta elde edilen iOS uygulamasını test veya Şirket İçi Dağıtım için son kullanıcının iOS cihazına nasıl yükleyeceğini gösterdi.