qmake: Find Apple ID via IDEProvisioningTeamByIdentifier for Xcode 16.2
The format of the Xcode preferences has changed, so we need to account for the new format when looking up the default development team. The account identifier (previously an email address) was not used by any consumers of the provisioningTeams() function, so it was left out. Pick-to: 6.5 Change-Id: I81a400000615594336e14c95db86ffa71a5c5ff9 Reviewed-by: Alexey Edelev <alexey.edelev@qt.io> (cherry picked from commit 380a9fdc872e14e537f3e148c7a1e72be5face2d) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> (cherry picked from commit 761d516fd4ee10fe943a54743795a91c1d9d3acc)
This commit is contained in:
parent
1e6ba42f12
commit
b07a7bda97
@ -470,18 +470,15 @@ static QList<QVariantMap> provisioningTeams()
|
||||
const QSettings xcodeSettings(
|
||||
QDir::homePath() + QLatin1String("/Library/Preferences/com.apple.dt.Xcode.plist"),
|
||||
QSettings::NativeFormat);
|
||||
const QVariantMap teamMap = xcodeSettings.value(QLatin1String("IDEProvisioningTeams")).toMap();
|
||||
QList<QVariantMap> flatTeams;
|
||||
for (QVariantMap::const_iterator it = teamMap.begin(), end = teamMap.end(); it != end; ++it) {
|
||||
const QString emailAddress = it.key();
|
||||
const QVariantList emailTeams = it.value().toList();
|
||||
|
||||
for (QVariantList::const_iterator teamIt = emailTeams.begin(),
|
||||
teamEnd = emailTeams.end(); teamIt != teamEnd; ++teamIt) {
|
||||
QVariantMap team = teamIt->toMap();
|
||||
team[QLatin1String("emailAddress")] = emailAddress;
|
||||
flatTeams.append(team);
|
||||
}
|
||||
QVariantMap teamMap = xcodeSettings.value(QLatin1String("IDEProvisioningTeamByIdentifier")).toMap();
|
||||
if (teamMap.isEmpty())
|
||||
teamMap = xcodeSettings.value(QLatin1String("IDEProvisioningTeams")).toMap();
|
||||
|
||||
QList<QVariantMap> flatTeams;
|
||||
for (const auto &[accountIdentifier, associatedTeams] : teamMap.asKeyValueRange()) {
|
||||
for (const auto &team : associatedTeams.toList())
|
||||
flatTeams.append(team.toMap());
|
||||
}
|
||||
|
||||
// Sort teams so that Free Provisioning teams come last
|
||||
|
Loading…
x
Reference in New Issue
Block a user