iOS開発の高度な部分(1)-証明書、パッケージおよびシェルフプロセス、p12ファイル

バージョン

  • Xcode 11.3.1

証明書

iOSアプリ開発、iOSディストリビューション(App Storeおよびアドホック)、WebサイトプッシュID証明書、Apple Pay支払い処理証明書(Apple Pay支払い処理証明書)など、iOS開発に関連する証明書にはさまざまな種類があります。Xcode 11の後に、AppleDevelopmentとAppleDistributionが追加されました。前者はiOS / macOS / tvOS / watchOSプラットフォーム開発証明書の組み合わせであり、後者はこれらのプラットフォームのリリース証明書の組み合わせです。
多くの種類があり、開発からAppStoreまでの一般的なアプリに必要な証明書を選択します。
一例として、Xcodeの11の後に開発環境を取る実際には、2つの証明書持ってするのに十分である:アップルの開発およびアップルの配布を

アップルデベロップメント

iOS / macOS / tvOS / watchOSプラットフォームの開発証明書を含むApple開発証明書。
実マシンでデバッグする場合は、この証明書をインストールする必要があります。証明書はMacコンピュータの「キーチェーンアクセス」にインストールされます。一度インストールするだけで済みます。プロジェクトを作成するたびに証明書をインストールする必要はありません。
実際のマシンでデバッグするには、通常、次の手順が必要です。

  1. 証明書アプリケーションファイルを生成する
    Macキーチェーンを開いてAppCertificate
    キーチェーンアクセス
    Assistantにアクセスします=》認証局に証明書を要求
    証明書の要求
    し、関連情報を入力
    関連情報
    して、ローカル(デスクトップなど)に保存すること選択します。このファイルは次の場合に使用します。後で証明書を生成します。
    証明書申請書類

  2. 開発証明書の生成
    Apple開発者にログインし、証明書を選択して追加します。
    証明書を追加する
    [アプリ開発者
    開発証明書
    ]を選択して続行し、[ファイルの選択]をクリックして、生成したばかりのアプリケーションファイル(.certSigningRequest)をアップロードします。
    スクリーンショット2020-03-132.55.30 pm
    開発証明書が生成され、リストに表示されるまで続けます(コンピューターが異なれば、開発証明書も異なります)。
    開発ファイル一覧

  3. 開発証明書をインストールする
    生成した証明書をクリックしてダウンロードします。
    証明書をダウンロードする
    ダブルクリックしてインストールします。
    証明書をインストールします
    次に、キーチェーンによってアクセスされるアプリの証明書でインストールが成功したことがわかります
    ビューの証明書

  4. 実機を楽しく開発・デバッグ

アップルディストリビューション

iOS / macOS / tvOS / watchOSプラットフォームのリリース証明書を含むAppleリリース(配布)証明書を使用して、ストアバージョン(App Store)および内部ベータバージョン(Ad Hoc)をリリースできます。
アプリを公開するには、通常、次の手順が必要です。

  1. 証明書アプリケーションファイルを生成します。このアプリケーションファイルは以前の開発証明書で生成されており、引き続き使用できます。
  2. 配布証明書の生成
    同様に、Apple開発者にログインし、新しい証明書を作成して、Apple配布を選択します。
    リリース証明書を生成する

アカウントは最大3つの発行証明書しか生成できません。私のアカウントはいっぱいであるため、グレー表示されて選択できません。
アップロード時にリリース証明書を選択するだけです。証明書の有効期間は1年です。有効期限が切れても、AppStoreの既存のアプリは影響を受けません。ただし、期限切れまたは失効した証明書を使用してアプリを更新することはできません。新しい証明書を生成して、アプリの更新を続行できます。

以下は、開発証明書の申請と同じです。[ファイル]を選択すると、アプリケーションファイルがアップロードされ、リリース証明書が生成されるまで次の手順が実行されます。3。
リリース証明書のクエリ
リリース証明書をインストールして
ダウンロードします。
リリース証明書をダウンロードする
キーチェーンアクセスで表示:
リリース証明書を表示する
4。アプリを楽しく公開します

アプリのパッケージ化とリストのプロセス

AppStoreセクション

インストールパッケージをAppStoreにアップロードするため、最初にApp Store Connectでアプリを作成する必要があります。アプリの作成は、パッケージIDに基づいています。したがって、最初のステップはスーツIDを作成することです。

  1. パッケージIDを作成
    し、開発者のWebサイトで証明書の設定入力します
    Apple開発者

アプリIDを作成
IDを作成する
アプリIDSの作成を選択
し、情報を入力します。バンドルIDは、プロジェクトのバンドルIDと一致しています。
情報を入力してください
正常に作成されるのは次のとおりです。
アプリIDのクエリ
次に、App StoreConnectのスーツIDに対応するプロファイルを作成します。
説明ファイルを作成する
AppStoreを選択してください
今すぐアプリIDを選択してください
アプリIDを選択し、リリース証明書などを選択して作成します。
次に、App Store Connectに移動してアプリを作成
アプリを作成する
し、情報を入力します
新しいアプリ
。IDを設定して、証明書構成で作成したばかりのアプリを選択します。
この時点で、アプリが作成されます。次に、Xcodeでパッケージ化してアップロードします。

Xcode部分

まず、
アーカイブ
[アクティブなアーキテクチャのみをビルド]オプションでTARGETSのアーキテクチャ構成を見てみましょう。デバッグで[はい]を選択すると、デバッグ中に現在のモデルに対応するアーキテクチャのみがコンパイルおよび生成されるため、コンパイルとデバッグが高速になります。リリース[いいえ]を選択して、リリースがコンパイルされていることを示します。有効アーキテクチャのすべてのアーキテクチャで、特定のアーキテクチャをコンパイルしない場合、このアーキテクチャに対応するモデルはこのインストールパッケージをインストールできません。
各タイプのプロセッサの対応するアーキテクチャ

  • エミュレータ32ビットプロセッサ-i386
  • エミュレーター64ビットプロセッサー-x86_64
  • 実機32ビットプロセッサ-armv7、armv7s(armv7はarmv7sと互換性があります)
  • 実機64ビットプロセッサ-arm64アーキテクチャ

特定のモデルの比較

  • armv6:iPhone、iPhone 2、iPhone 3G、iPod Touch(第1世代)、iPod Touch(第2世代)
  • armv7:iPhone 3Gs、iPhone 4、iPhone 4s、iPad、iPad 2
  • armv7s:iPhone 5、iPhone 5c(armv7はarmv7sと互換性があります)
  • arm64(armv64なし):iPhone5s以降のモデル

今のところ、armv7とarm64の2つのアーキテクチャをサポートするだけで済みます。
ちなみに、使用しているサードパーティライブラリが特定のフレームワークをサポートしていない場合、不足しているフレームワークに対応するモデルを使用することはできません。たとえば、一部のライブラリがi386 / x86_64フレームワークをサポートしていない場合、シミュレータを使用してコードを実行することはできません。
次に、パッケージと棚のプロセス。
写真が多すぎます。いくつかの主要なプロセスを選択してください。
アーカイブ

アーカイブ

App Store

署名を自動的に管理する

正常にアップロード

アプリ情報の入力と確認の手順については、ここでは説明しません。

.p12ファイル

前述のように、証明書を発行するために最大3つの開発者アカウントを作成できます。また、この証明書はコンピューターにバインドされています。つまり、コンピューターAによって作成された証明書はコンピューターBでは使用できません。次に問題があります。プロジェクトをコンピューターAからコンピューターBにコピーします。コンピューターBは、プロジェクトをデバッグするために開発証明書を自分で作成できますが、リリース証明書がいっぱいで再度作成できない場合、この時点ではリリースされません。時間。
コンピューターBでアプリを公開する場合は、コンピューターA(秘密鍵を含む)からリリース証明書をエクスポートする必要があります:
証明書のエクスポート
名前、暗号化など。
証明書情報
p12
エクスポートされるファイルは、p12サフィックスが付いたファイルであり、インストールします。コンピューターBで、つまりリリース証明書(秘密キーを含む)をキーチェーンで生成し、アプリのリリースに使用できます。

おすすめ

転載: blog.csdn.net/u012078168/article/details/104847012