Tim,
Sie sind richtig, das Mobile Hub Projekt wurde für eine einzelne Applicaton ID entwickelt und unterstützt daher jedes Projekt eine einzelne Apple-Zertifikat und/oder Google GCM Anmeldeinformationen drücken. Das Erstellen eines Projekts für jedes Zertifikat/jede App-ID ist ein Ansatz, da es außerdem die entsprechenden Berechtigungen für jeden App-Benutzer zum Erstellen von Push-Endpunkten (SNS-Plattformendpunkte) hinzufügt. Plattformendpunkte werden von SNS mit dem Geräte-Token verknüpft, um direkt auf diesen Geräten zu veröffentlichen.
Das einzige Problem bei mehreren Projekten ist, dass jedes Projekt einen neuen Cognito-Identitätspool erstellt und daher Ihre Apps nicht den gleichen Identitätspool teilen, wenn dies für Sie von Bedeutung ist. Zum Beispiel haben Sie USER A, der sich in Facebook auf APP A anmeldet und dann APP B herunterlädt und sich über denselben Facebook-Account anmeldet. In diesem Fall hat dieser Benutzer in beiden Apps dieselbe Identität.
Die alternative Option ist das ein Mobile Hub-Projekt zu halten und eine SNS-Plattform Application erstellen für jeden Apple-Zertifikat drücken, wenn diese jeweils Zertifikate eine einzigartige App Identifier (App-ID) haben.
Wenn Sie das ein Mobile Hub Projekt halten und mehrere SNS-Plattform-Anwendungen für jedes Zertifikat erstellen, werden Sie die folgenden Änderungen vornehmen müssen:
- Ändern Sie den Bundle Identifier der App das Bundle Identifier übereinstimmen des Zertifikats, das Sie für Ihre Bewerbung an SNS hochgeladen haben. (zB "com.ihredomain.yourappname"). Eigentlich müssen Sie dies für beide Optionen tun.
- Sie müssen die IAM-Rollen (die im Mobile Hub-Projekt erstellt wurden) aktualisieren, indem Sie jeder Ihrer Apps Zugriff auf diese Plattformanwendungen gewähren. Beispiel: Jede Mobile Hub-Projektbeispielanwendung verfügt über eine authentifizierte und eine nicht authentifizierte IAM-Rolle, die mit dem Cognito-Identitätspool für dieses Projekt verknüpft ist. Wenn Sie Push-Benachrichtigungen aktiviert und die .p12-Datei hochgeladen haben, wurden diesen Rollen Berechtigungen hinzugefügt, die es den App-Benutzern ermöglichen, ihre Gerätetokens an SNS zu senden und einen SNS-Plattform-Endpunkt zu erstellen. Da Sie nur ein Zertifikat pro Projekt hinzufügen können, müssen Sie diese IAM-Rollen mit Berechtigungen für die zusätzlichen Plattformanwendungen aktualisieren, die Sie in SNS erstellt haben.
Ich hoffe, Sie haben Erfolg mit beiden Optionen.