Экспорт устройств, добавленных в портал Apple iOS Provision

Мой яблочный разработчик скоро истечет через 5 дней. И после обновления я хочу восстановить количество устройств до 100, но пока я хочу экспортировать все добавленные в настоящее время устройства в качестве резервной копии для будущего использования, это 87 устройств.

В новом разделе разработчика Apple я не вижу возможности экспортировать все устройства, и я не хочу копировать все 87 устройств: (

Примечание: Я хочу экспортировать устройства в формате, требуемом Apple для нескольких вставок устройств.

Ответ 1

Если вы ищете вариант, который не требует дополнительного программного обеспечения, записей или воспроизведения регулярных выражений, здесь фрагмент JavaScript, который вы можете запустить в консоли Chrome (или я предполагаю, что любой другой браузер) для консоли JavaScript получить список устройств, отформатированных правильно:

var ids = ["Device ID"];
var names = ["Device Name"];
$("td[aria-describedby=grid-table_name]").each(function(){
    names.push($(this).html());
});
$("td[aria-describedby=grid-table_deviceNumber]").each(function(){
    ids.push($(this).html());
});

var output = "";
for (var index = 0; index < ids.length; index++) {
    //output += names[index] + "\t" + ids[index] + "\n";    //original
    output += ids[index] + "\t" + names[index] + "\n";      //post September 2016
}
console.log(output);

Полный экспорт будет зарегистрирован на консоли, после чего вы можете просто скопировать его/вставить в пустой текстовый документ, который затем может быть повторно импортирован в Apple в любое время.

Это работает с макетом разработчика Apple в настоящее время, по состоянию на апрель 2015 года. Очевидно, это может сломаться, если они меняют материал.

Ответ 2

Откройте список устройств сафари, хром или firefox и firebug. Откройте веб-инспектор (opt-cmd-i в сафари), перейдите на вкладку инструмента (ctrl + 3). Нажмите кнопку "Начать запись" и обновите страницу.

В самом низу появившегося списка найдите "listDevices.action" и выберите его. В правой колонке веб-инспектора скопируйте и вставьте полный URL-адрес и загрузите файл JSON со списком устройств. Тогда с простым регулярным выражением (т.е./\ "Name \":\ "([^ \" ] +)\ ",\n\s * \" deviceNumber\ ": \" ([^\ "] +)\" /) вы можете получить имя и номер устройства.

Формат, который Apple принимает для загрузки,

Device ID   Device Name
A123456789012345678901234567890123456789    NAME1
B123456789012345678901234567890123456789    NAME2

Обновление:
Ах! Теперь Apple предоставляет полный номер устройства на странице "iOS devices", поэтому он упрощает весь процесс. Скопируйте-вставьте список в, например, Sublime text и введите имя и номер устройства в правильном порядке:

find:/^(.*) + ([^\n] +)\n/
замените:\2\t\1\n

Ответ 3

Ни один из вышеперечисленных не работал у меня, скорее всего, потому, что Apple изменила формат. Но то, что отлично работало, было следующим:

  • скопировать/вставить все элементы с страницы устройств Apple.
  • вставить в Numbers, идентификатор устройства и имена распознаются как два разных столбца.
  • перетащите порядок столбцов, чтобы устройства были первыми, а не именами
  • копировать/вставлять все строки в текстовый файл
  • Загрузите в Apple, и вы закончили.

Ответ 4

Вы можете использовать вызов командного инструмента Spaceship, он предоставляет как Центр разработчиков Apple, так и API-интерфейс iTunes Connect

Вот как я сделал, чтобы перенести все мои устройства из моей учетной записи Apple Developer на второй.

spaceship1 = Spaceship::Launcher.new("[email protected]", "password")
spaceship2 = Spaceship::Launcher.new("[email protected]", "password")

#Get all devices from the Apple Developer account 1.
devices = spaceship1.device.all

#Loop through all devices from account 1 and then add/create them in account2.
devices.each do |device| spaceship2.device.create!(name: device.name, udid: device.udid) end

Примечание. Чтобы быстро поиграть с запуском космического корабля irb в вашем терминале и выполнить требуемый "космический корабль".

Ответ 5

Отметьте инструмент интерфейса командной строки Mattt's, Cupertino

Вы можете запустить ios devices:list, чтобы получить список устройств в своей учетной записи.

Скорее всего, это не точный формат для импортера Apple, но он должен довести вас до хорошей точки, есть также ios devices:add, что позволит вам повторно добавлять ваши устройства из командной строки.

Ответ 6

В настоящее время у Apple больше нет JQuery. Мы можем использовать этот запрос, чтобы получить

var data = document.querySelectorAll(".infinite-scroll-component .row");
for(var i = 0 ; i < dencho.length; i++){
  var name =  data[i].childNodes[0];
  var id =  data[i].childNodes[1]
  console.log(name.innerText + "\t" +  id.innerText  + "\n");
}

Ответ 7

Моим решением было создать новый профиль подготовки здесь и добавьте к нему все устройства. Затем загрузите его и откройте vim (или любой другой редактор). Файл будет содержать некоторый бинарный стиль и plist (xml) со всеми вашими устройствами, которые можно проанализировать, я думаю, но я просто c & p список устройств. Smth вроде:

<key>ProvisionedDevices</key>
   <array>
       <string>device1 udid</string>
       ....
       <string>deviceN udid</string>
   </array>

Удалите свой профиль обеспечения, если он вам не понадобится.

Ответ 8

По состоянию на сентябрь 2019 года этот фрагмент, который я создал (смесь ответа T.Nhan выше и руководящих принципов Apple по формату загрузки), работает из коробки, просто сохраняя вывод в файл .txt и загружая:

var data = document.querySelectorAll(".infinite-scroll-component .row");

var deviceListString = "Device ID\tDevice Name\tDevice Platform\n"
for (var i = 1; i < data.length; i++) {
  deviceListString += (data[i].childNodes[1].innerText + "\t" + data[i].childNodes[0].innerText + "\t" + (data[i].childNodes[2].innerText == "iPhone" || data[i].childNodes[2].innerText == "iPad" ? "ios" : "mac") + "\n");
}

console.log(deviceListString);