Comment faire pour utiliser Automator pour distribuer Beta Applications pour Over The Air Installation

StackOverflow https://stackoverflow.com/questions/4559981

Question

Comment automatiser le processus de distribution d'une demande de plus le téléchargement de l'air. Pour télécharger sur l'air que vous devez être sur le profil de distribution (pas sûr si les besoins des utilisateurs à télécharger plus d'un d'entre eux pour télécharger plus d'une application)

Les étapes sont:

  • Construire et archivage et Enregistrer sur le disque
  • Télécharger sur le site, en remplacement de vieux Version
  • Mise à jour iPhone Site Web avec la date

La réponse est ci-dessous, ma longue réponse. Au départ, ce fut une question, mais après un certain temps je l'ai résolu moi-même. Vous pouvez même le configurer de sorte que lorsque vous envoyez un e-mail certain qu'il va construire afin que vous pouvez écrire du code sur la route (en utilisant Dropbox et Droptext) puis installez sur votre téléphone et voir les différences.

Mise à jour (2012): https://testflightapp.com/ a apporté d'importantes améliorations à leur système de déploiement, y compris l'utilisation de l'utilisateur suivi. Je crois que ces ajouts, il pourrait être utile d'avoir le système de déploiement de marque par eux pour obtenir ces fonctionnalités supplémentaires. On pourrait combiner le système à deux, en utilisant mon système de code d'écriture sur un iPad, la construction et la compilation sur un ordinateur distant, puis l'installer sur l'iPad pour les tests de développement, puis utilisez TestFlight pour les utilisateurs bêta. Ou tout simplement utiliser TestFlight entièrement.

Était-ce utile?

La solution

Site Web Mise en page Fichier

  • name.com/index.php (iPhone du site, optionnel mais recommandé)
  • name.com/application/index.php (de base Auto Link Création du site)
  • name.com/application/application.ipa (seul fichier qui a besoin d'être mis à jour)
  • name.com/application/application.plist
  • name.com/application/application57.png
  • name.com/application/application512.png
  • name.com/application/Application_Distribution_Profile.mobileprovision

Solution en utilisant Automator:

Première action: Exécuter le script Shell pour construire et archiver et sauvegarder dans un fichier .ipa. Il peut prendre un certain temps pour comprendre comment modifier ceci pour adapter votre situation comme il l'a fait avec moi (ce ne peut pas fonctionner avec XCode 4, et si vous avez des problèmes simplement construire et archiver l'intérieur XCode)

PROJDIR="/Users/username/Xcode/applicationfolder"
PROJECT_NAME="application"
APPLICATION_NAME="Application"
TARGET_SDK="iphonesimulator4.0"
PROJECT_BUILDDIR="${PROJDIR}/build/Distribution-iphoneos"
TARGET_TEST_NAME="application"
BUILD_HISTORY_DIR="${PROJDIR}/distribution/" #where you want the .ipa to go
DEVELOPER_NAME="First Last (TMTE9G3NGS)"
PROVISONING_PROFILE="/Users/username/Xcode/Application_Distribution_Profile.mobileprovision"

# compile project
echo Building Project
cd "${PROJDIR}"
xcodebuild -target "${PROJECT_NAME}" -sdk "${TARGET_SDK}" -configuration Distribution

#Check if build succeeded
if [ $? != 0 ]
then
  exit 1
fi

/usr/bin/xcrun -sdk iphoneos PackageApplication -v "${PROJECT_BUILDDIR}/${PROJECT_NAME}.app" -o "${BUILD_HISTORY_DIR}/${APPLICATION_NAME}.ipa" --sign "${DEVELOPER_NAME}" --embed "${PROVISONING_PROFILE}"

Action Two: Get Finder article

Le fichier .ipa d'application qui vient d'être enregistrée.

Action Trois: Télécharger vers un serveur FTP

Google pour le script (cant url post) son à automatorworld dot com bien, devrait être facile à trouver. Utilisez ce script pour télécharger le fichier à l'endroit où vous le voulez. Dans mon cas name.com/application/application.ipa

Maintenant, pour la fin du site des choses.

Si vous voulez avoir un moyen de base pour les utilisateurs de télécharger le fichier il suffit de mettre le fichier index.php (créé ci-dessous), le fichier Application.plist (créé ci-dessous), le fichier .ipa et le pixel 57 et 512 pixels image dans un dossier.

Je suis allé un peu plus loin et a créé un site iPhone HTML que vous pouvez aller à cela montre aussi lorsque le fichier a été mis à jour. Vous pouvez créer ce site en utilisant ce modèle: http://snipt.org/vmup/ je devais utiliser la site de base pour copier l'URL qu'il a créé pour les liens vers l'UIE et mobileprovision. Voici un extrait que j'ai pour le lien avec une mise à jour automatique Dernière mise à jour Date. Pour le dernier texte mis à jour au travail que je devais changer le fichier à un .php

<li><a href="URL FROM BASIC SITE HERE"><span class="menuname">Install Application Name</span><span class="itemarrow"></span></a></li>

<sup>
&nbsp; &nbsp; Last Updated: <?= date("m/d/Y H:i",filemtime("applicationfolder/application.ipa")) ?>  (TIME ZONE HERE)
<sup>

Lien de base auto création d'un fichier d'index d'application:

<?php  $ipas = glob('*.ipa'); $provisioningProfiles = glob('*.mobileprovision'); $plists = glob('*.plist');  $sr = stristr( $_SERVER['SCRIPT_URI'], '.php' ) === false ?  $_SERVER['SCRIPT_URI'] : dirname($_SERVER['SCRIPT_URI']) . '/'; $provisioningProfile = $sr . $provisioningProfiles[0]; $ipa = $sr . $ipas[0]; $itmsUrl = urlencode( $sr . 'index.php?plist=' . str_replace( '.plist', '', $plists[0] ) );   if ($_GET['plist']) { $plist = file_get_contents( dirname(__FILE__)  . DIRECTORY_SEPARATOR  . preg_replace( '/![A-Za-z0-9-_]/i', '', $_GET['plist']) . '.plist' ); $plist = str_replace('_URL_', $ipa, $plist); header('content-type: application/xml'); echo $plist; die(); }   ?><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>Install iOS App</title> <style type="text/css">  li { padding: 1em; }  </style> </head> <body> <ul> <li><a href="<? echo $provisioningProfile; ?>">Install Team Provisioning File</a></li> <li><a href="itms-services://?action=download-manifest&url=<? echo $itmsUrl; ?>"> Install Application</a></li> </ul> </body> </html>

fichier plist Application:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>items</key>
    <array>
        <dict>
            <key>assets</key>
            <array>
                <dict>
                    <key>kind</key>
                    <string>software-package</string>
                    <key>url</key>
                    <string>IPA FILE LINK HERE</string>
                </dict>
                <dict>
                    <key>kind</key>
                    <string>full-size-image</string>
                    <key>needs-shine</key>
                    <true/>
                    <key>url</key>
                    <string>URL FOR 512 PIXEL IMAGE HERE</string>
                </dict>
                <dict>
                    <key>kind</key>
                    <string>display-image</string>
                    <key>needs-shine</key>
                    <true/>
                    <key>url</key>
                    <string>URL FOR 57 PIXEL IMAGE HERE</string>
                </dict>
            </array>
            <key>metadata</key>
            <dict>
                <key>bundle-identifier</key>
                <string>COM.COMPANY.APPLICATION</string>
                <key>bundle-version</key>
                <string>VERSION NUMBER HERE (YOU DON'T REALLY NEED TO UPDATE IT UNLESS YOU WANT TO)</string>
                <key>kind</key>
                <string>software</string>
                <key>title</key>
                <string>APPLICATION NAME HERE</string>
            </dict>
        </dict>
    </array>
</dict>
</plist>
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top