インハウスアプリとは?
インハウスアプリは、組織内で内部で使用するために設計された独自のアプリケーションです。これらは、カスタムアプリを非公開にし、Apple App Storeのレビュープロセスを回避する必要がある場合に特に便利です。これらのアプリは、通常、パブリック配布チャネルをバイパスして、組織内のデバイスに直接配布されます。社内アプリの詳細については、 Apple のドキュメントを参照してください。
インハウスアプリの仕組みは?
インハウスアプリを使用すると、組織はAppleデバイスのフリート全体にカスタムアプリケーションをデプロイできます。 Kandjiを使用して、これらのデプロイメントを管理するための社内アプリケーション Library アイテムを作成できます。アプリの .ipa ファイルを Kandjiにアップロードすると、ファイルは処理され、アプリのアイコン、バンドル ID、バージョン情報などの詳細が解析されます。その後、 Kandjiはこれらの詳細を使用して、必要なマニフェスト ファイルを自動的に生成し、アプリをデプロイします。
必要条件
アップロードするファイルは.ipa形式である必要があります
.ipa ファイルサイズは 4 GB を超えてはなりません
アップロードされるファイルバンドルのバージョンは、セマンティックな整数ベースのバージョンである必要があります
インハウスアプリを更新する場合、新しくアップロードされたファイルバンドルIDは、既存のバンドルIDと一致する必要があります
インハウスアプリを更新する場合、新しくアップロードされたファイルバンドルのバージョンは、以前のバージョンよりも高くなければなりません
インハウスアプリライブラリアイテムの追加と設定
左側のナビゲーションバーでライブラリに移動します。
右上の [新規追加 ] をクリックし、[In-House App] を選択します。
「追加と設定」をクリックします。
新しいインハウスアプリライブラリアイテムに名前を付けます。
ご希望の Assignment Maps または Classic Blueprintsに割り当てます。
[インストールの詳細] で、インハウスアプリの .ipa ファイルをアップロードします。
アプリがアップロードされると、ファイルの種類、バージョン、バンドル ID の有効性がチェックされます。
インハウスアプリの更新
新しいバージョンのインハウスアプリをデプロイする準備ができたら、次の 2 つの推奨されるアプローチがあります。
ライブラリ内の既存のインハウスアプリを更新する
新しいバージョンを現在の In-House App Library Itemにアップロードします。これにより、古いファイルが置き換えられ、その Library Itemに割り当てられているすべてのデバイスに新しいインストールコマンドが自動的に送信されます。
新しいバージョンは、前のバンドル ID と同じバンドル ID を持つ必要があり、バージョン番号は現在のバージョンよりも大きい必要があります。
新しいバージョンの新しい Library Item を作成する
新しいバージョンを特定のデバイス グループにロールアウトし、他のユーザーは現在のバージョンのままにする場合は、新しい In-House App Library Itemを作成できます。
このオプションでは、 Assignment Maps を使用することをお勧めします。
Blueprints ノードまたは割り当てマップ ノードには、バンドル ID (Apple が各アプリに必要とする一意の識別子) ごとに 1 つの社内アプリのみを含めることができることに注意してください。ただし、異なる割り当てマップ ノード間で同じバンドル ID を使用できます。右端のノードが常に優先されることを忘れないでください。
整理整頓するには、 Library Item にアプリのバージョン番号を付けて、同じアプリの異なるバージョンを簡単に区別できるようにします。
アプリアイコンの解析に関する考慮事項
.ipa ファイルを社内アプリ Library アイテムにアップロードすると、 Kandji は Xcode によって生成された Info.plist ファイルのメタデータを解析します。このファイルには、メタデータやアイコン画像などの重要な情報が含まれています。Xcode がこれらのアプリを構築する方法は、開発者の構成によって異なる場合があります。
Kandji が In-House Apps Library または Home Screen Layout Library Item に表示する正しいアプリ アイコンを抽出できるようにするには、アイコン イメージ ファイルを .png ファイルする必要があり、そのファイル名を Info.plist ファイルで直接参照する必要があります。
たとえば、 Accuhive.ipa テスト アプリでは、 Info.plist ファイルは CFBundleIcons キーの下に次のようになります。
<key>CFBundleIcons</key>
<dict>
<key>CFBundlePrimaryIcon</key>
<dict>
<key>CFBundleIconFiles</key>
<array>
<string>AppIcon60x60</string>
</array>
<key>CFBundleIconName</key>
<string>AppIcon</string>
</dict>
</dict>
この場合、 Kandji CFBundleIconFiles キーを使用して、 Library 項目内に表示するアプリ アイコンを見つけて抽出します。
Info.plist ファイルがアイコン ファイルを参照していない場合、Kandji Library Itemにアイコンを表示できません。ただし、これは Kandjiの表示にのみ影響します。アプリがデバイスにインストールされると、アプリ自体に組み込まれているアイコンが使用されます。
その他の考慮事項
インハウスアプリは、 Kandji APIを使用して管理できます。詳細については、 API ドキュメントを参照してください。
許容される .ipa アプリのバージョン形式には、整数ベースの X.Y.Z または X.Y が含まれます。X や文字や記号を含む形式など、その他の形式は許可されません。
保存すると、アプリのバージョンとバンドル ID 情報が表示されるため、デプロイの準備ができているアプリとバージョンを簡単に特定できます。 Library Item の上部にある詳細は、この情報を反映して更新されます。
Blueprints ノードまたはアサインメントマップノードには、バンドルID(Appleがデバイス上の各アプリに必要な一意の識別子)ごとに1つのインハウスアプリのみを含めることができます。ただし、異なるノード間で同じ In-House App バンドル ID を使用できます。すべての割り当てマップ ノードと同様に、右端のノードが優先されます。