Создание ipa с использованием любого скрипта (создание ipa из другого ipa) - PullRequest
1 голос
/ 06 декабря 2011

В основном мой проект основан на книгах (комбинация PDF и XML). По некоторым причинам мы поддерживаем более десяти профилей инициализации. Когда появляется новое устройство udid, нам нужно создать другой профиль инициализации (согласно требованию). Каждый раз, когда я собираюсь создавать, мне нужно добавить в свой код некоторые книги по подготовке и замене, это требует больше времени. Я видел много сценариев, но все они не полностью заполняли сценарий.

Вопросы:

1. Можно ли разработать другое приложение (Mac OSX), чтобы сделать ipa, который принимает входной файл инициализации, мой код (ios) и книги, а затем компилировать, наконец, выдавая вывод в виде файла .ipa для предоставления кода?

2. Есть ли другой способ сократить время, затрачиваемое на создание ipa?

Если возможно, пожалуйста, дайте мне некоторую идею, чтобы сделать это правдой, ваши предложения также имеют большее значение в этом. Спасибо заранее каждому.

новый вопрос для генерации Ipa из другого файла ipa

Я следовал вашему подходу, но может ли кто-нибудь сообщить мне, я создал файл ipa, и теперь я хочу изменить содержимое ipa, а также профиль обеспечения, возможно ли это?

1 Ответ

2 голосов
/ 06 декабря 2011

Если у вас есть ipa, созданный с использованием более старого профиля обеспечения, и код не изменился при получении следующего профиля обеспечения, то есть способ сделать это.

You can write a script from following steps:

1) Change the .ipa that you already have to .zip and extract zip contents. This would reveal Payload folder that has YourApp.app folder
2) Right click on YourApp.app folder and show package contents
3) find embedded.mobileprovision and delete it. Drag your new .mobileprovision file into this location and rename it to say embedded.mobileprovision.
4) Find and delete any _CodeSignature or CodeResources files/folders
5) From terminal delete .DS_Store files in Payload and YourApp.app folder
6) Use Codesign utility in /usr/bin/codesign to codesign your .app. Here is command for it:

codesign -f -s "iPhone Distribution: Your company Name" PathToYourApp

In your keychain utility find the certificate name that is used to create the distribution profile and match it to first argument in codesign -f -s
7) finally zip the payload to form an ipa

zip -r YourApp.ipa Payload
...