AdobeのLearning Managerモバイルアプリでのホワイトラベル
Adobe Learning Managerモバイルアプリは、ホワイトラベルをサポートするようになりました。これにより、独自のブランディングでアプリをリリースできるようになりました。
白いラベルのアプリを起動する準備を開始する方法
独自の白いラベルのアプリをデプロイして管理するには、次の手順に従います。
-
アセット(スプラッシュスクリーン画像など)とテキストを準備して、アプリとapp/playストアの説明の両方で使用できるようにします。
-
次の能力を持つ技術リソースを割り当てます。
- プッシュ通知証明書ファイルを生成しています。
- ALMチームが提供するアプリのバイナリに署名しています。
- 公開プロセスをアップロードおよび管理しています。 公開プロセスでは、アプリマネージャーとアプリ/Playストアチームの間で、アプリがすべての公開ガイドラインに準拠していることを伝える必要があります。 ALMから、完全に準拠したアプリバイナリを受け取ります。
概要
ホワイトラベルとは、アプリやサービスのブランド名を変更し、元のクリエイターのようにカスタマイズする行為です。 Adobe Learning Managerでは、モバイルアプリにホワイトラベルを適用して、アプリのブランドを変更したり、自分のブランドの下でアプリを使用したりすることができます。
カスタマイズ可能な項目
以下をカスタマイズできます。
フィールド
カスタムディープリンクを処理するためのサイトの関連付けの更新
カスタムドメインまたはlearningmanager*.adobe.comをホストとして使用している場合は、何もする必要はありません。 ただし、URLにカスタムソリューションまたは特定のホスト名を使用する場合は、サイト関連付けファイルを追加します。
詳細については、次のリンクを参照してください。
プッシュ通知の生成
AndroidアプリとiOSアプリにプッシュ通知を送信するには、2つの異なるメカニズムが必要です。
- iOSの場合、プッシュ通知証明書を生成します。
- Androidの場合は、Firebaseプロジェクトから生成されたサーバーキーを提供します。
Firebaseでプロジェクトを設定するには、以下の手順に従います。
iOSでのプッシュ通知
iOSアプリの開発では、プッシュ通知証明書はAppleが発行する暗号化資格情報で、これによりサーバーはAppleのプッシュ通知サービス(APN)を介してiOSデバイスにプッシュ通知を安全に送信できます。
証明書は、iOSデバイスにプッシュ通知を送信する際に、サーバー(またはプロバイダー)とAppleのAPN間の安全な通信を保証します。
Android版とiOS版はどちらも、デバイスにプッシュ通知を送信するためのサービスとしてFirebase Cloud Messaging(FCM)を使用しています。
iOSで証明書を生成する方法
以下の手順に従います。
-
プッシュ通知証明書 と秘密キー(.p12)を生成またはダウンロードします。 詳しくは、Appleデベロッパーのドキュメントを参照してください。
-
ファイルのダウンロードが完了したら、p12ファイルをインストールします。 パスワードを使用して、キーチェーンアクセス にインストールします。
-
証明書 に移動し、証明書をエクスポートします。 MIMEタイプとして.cerが選択されていることを確認します。
-
p12ファイルとcerファイルが使用可能になったら、次のコマンドを実行します。
- openssl pkcs12 -in privatekey.p12 -out myapnappkey.pem -nodes –clcerts
- openssl x509 -in privatekey.cer -inform DER -out myapnsappcert.pem
- openssl s_client -connect gateway.sandbox.push.apple.com:2195 -cert myapnsappcert.pem -key myapnappkey.pem
サーバーに接続できる場合は、作成した証明書が有効です。 myapnappkey.pemファイルから、証明書とプライベートキーの値をコピーします。
Androidでのプッシュ通知
Androidの場合、ユーザーはFirebaseプロジェクトからservices.jsonファイルを提供して、SNSサービスにエントリを追加する必要があります。
Firebaseでプロジェクトを作成し、 services.jsonファイルをCSMチームと共有します。 このファイルは、SNSのトークンベースのエントリに必要です。 サーバーキーはもう使用されていないことに注意してください。 Firebaseでのプロジェクトの作成を参照してください。
services.jsonファイルをダウンロードするには、次の手順に従います。
-
Firebase コンソールにログインします。
-
プロジェクト設定 に移動し、クラウドメッセージング を選択します。
-
Firebase Cloud Messaging API を検索し、サービスアカウントの管理 を選択します。
-
サービスアカウント ページの左側のパネルで、サービスアカウント を選択します。
-
プロジェクトのエントリを探し、[アクション]で[詳細の管理]を選択します。
note note NOTE プロジェクトエントリの形式は、<-accountname->@appspot.gserviceaccount.comになります。 -
「キー」タブに移動し、「キーを追加」を選択します。
-
キーがない場合は、新しいキーの作成 を選択し、キーの種類として JSON を選択します。 これにより、JSONファイルが生成およびダウンロードされます。
-
既にキーがある場合は、既存のキーをアップロード を選択し、キーを貼り付けてアップロードします。 これにより、JSONファイルが生成およびダウンロードされます。
AWSでSNSサービスにエントリを追加するためのJSONファイルを共有する方法については、CSMチームにお問い合わせください。 ユーザーは、プッシュ通知のためにSNSサービスに登録されたエントリを取得する必要があります。これにより、上記で生成された証明書を検証のために共有することが求められます。
Firebaseでのプロジェクトの作成 create-project-in-firebase
Android
上記の手順で作成したのと同じプロジェクトをプッシュ通知に再利用します。
プロジェクトをFirebaseに追加し、google-services.json ファイルを取得します。
iOS
プロジェクトをFirebaseに追加し、GoogleService-Info.plist ファイルを取得します。
署名されたバイナリを生成する
iOS
<root>
フォルダーには、Runner.xcarchive.zip ファイルが含まれています。 次のコマンドを実行して、署名されたバイナリを生成します。
-
次のコマンドを実行して、アーカイブを解凍します。
code language-none unzip Runner.xcarchive.zip
-
appディレクトリに移動します。
code language-none cd Runner.xcarchive/Products/Applications/Runner.app
-
モバイルプロビジョニングファイルのコピー:
code language-none cp <path>/<mobile-provisioningfile>.mobileprovision embedded.mobileprovision
-
<root>
フォルダー( Runner.xcarchive.zipがある場所)に戻ります:code language-none cd <root>
-
xcodebuildを使用してアーカイブをエクスポートします。
code language-none xcodebuild -exportArchive -archivePath Runner.xcarchive -exportPath ipa_path/ -exportOptionsPlist <path>/<ExportOptions-file>.plist
-
ipa_pathフォルダーで.ipaファイルを探します。
-
.ipaファイルを
Diawi
Webサイトにアップロードします。 -
完全にアップロードされたら、[送信] ボタンを選択します。
-
完了すると、QRコードとリンクが届きます。
-
SafariでQRコードまたはリンクを直接開きます。
デバイスがプロビジョニングプロファイルに含まれている場合は、デバイス上でインストールが続行されます。
Android
APKファイルの場合
sh""" <path>/apksigner sign --ks $storeFile --ks-pass "pass:$store_password" --ks-key-alias $key_alias --key-pass "pass:$key_password" --out app-release-signed.apk -v app-release.apk """
aabファイルの場合
Playストアでは、公開するためにaab形式のAndroidバイナリが必要です。 したがって、署名されていない.aabファイルを提供します。
.aabファイルに署名するには、次の手順を実行します。
次のコマンドを実行します。
<path>/jarsigner -verbose -sigalg SHA256withRSA -digestalg SHA-256 -keystore <keystore-file> app-release.aab <signingKeyAlias>
プロンプトが表示されたら、次のパスワードを入力してください。
- キーストアのパスワード
- 署名キーエイリアスのパスワード
付属のapkを使用できます。 ただし、aabファイルからapkを生成する必要がある場合は、次の手順に従います。
次のコマンドを実行して、apkファイルを作成します。
java -jar <path>/bundletool-all.jar build-apks --bundle=app-release.aab --output=my_app.apks --mode=universal
ファイルを解凍するには、次のコマンドを実行します。
unzip my_app.apks -d output_dir
output_dir フォルダーからapkファイルを取得します。
次のステップ
バイナリを生成したら、バイナリをPlayストアまたはApp Storeにプッシュします。
変更を適用する方法
必要なアセットとファイルをCSMチームに送信します。 次に、CSMチームがフォームに必要な変更を入力し、必要なアセットを添付します。 チームは、変更を確認し、エンジニアリングチームに通知します。 エンジニアリングチームがビルドを生成し、CSMチームと共有します。
CSMチームがお客様とビルドを共有します。
カスタマイズできない内容
- パスワードの更新画面
- アカウントの作成画面