Frage

Wie kann ich eine iPhone-Anwendung von Xcode zu echtem iPhone-Gerät bereitstellen, ohne ein US $ 99 Apple-Zertifikat mit?

War es hilfreich?

Lösung

Es klingt wie die Anwendung nicht signiert ist. Herunterladen ldid von Cydia und dann verwenden, etwa so: ldid -S /Applications/AccelerometerGraph.app/AccelerometerGraph

Auch sicher sein, dass die binären als ausführbar gekennzeichnet ist: chmod +x /Applications/AccelerometerGraph.app/AccelerometerGraph

Andere Tipps

Ich habe eine Mischung aus zwei howtos verwendet: Jasons und alex . Mit dem zweiten haben wir den Vorteil, dass sie zu debuggen. Ich werde meistens einfach kopieren sowohl unten (und vereinfachen alex):

Update Januar 2012: diese auf SDK funktioniert immer noch 4.2.1 und iOS 5.0.1 - ich habe es gerade getestet alles auf einem neue Computer und Gerät!


1. Erstellen Zertifikat

selbstsignierten

Patch Ihr iPhone SDK die Verwendung dieses Zertifikats zu ermöglichen:

  1. Starten Sie Keychain Access.app. Keine Elemente ausgewählt wird, aus dem Schlüsselanhänger-Menü auswählen Zertifikatsassistent, dann ein Zertifikat erstellen.

    • Name: iPhone Developer
    • Zertifikatstyp: Code Signing
    • Lassen Sie mich Standardwerte überschreiben: Ja
  2. Klicken Sie auf Weiter

    • Gültigkeit: 3650 Tage
  3. Klicken Sie auf Weiter

  4. Blank aus die E-Mail Adressfeld ein.

  5. Klicken Sie auf Weiter bis zur vollständigen .

    Sie sollten sehen, "Das Wurzelzertifikat ist nicht vertrauenswürdig" . Dies wird erwartet.

  6. das iPhone SDK Stellen Sie das selbst signiertes Zertifikat zu ermöglichen, verwendet werden:

    sudo /usr/bin/sed -i .bak 's/XCiPhoneOSCodeSignContext/XCCodeSignContext/' /Developer/Platforms/iPhoneOS.platform/Info.plist
    

    Wenn Sie Xcode geöffnet haben, starten Sie ihn neu, damit diese Änderung wirksam wird.

Und wenn Sie auf iOS sind 5, das ist es! Probieren Sie es jetzt! Es kann nicht das Debuggen ermöglichen, aber die App wird es!

Ich war von diesem sehr überrascht, weil, wie sollten Sie wissen , habe ich keine Ahnung, auf was all diese Hackings sind alle über! Alles, was ich tat, war die Verbesserung ein wenig, was ich an anderer Stelle gefunden, wie ich darauf.

Also ja, die ganze Methode nicht die gleiche Art und Weise arbeitet mehr und ich konnte keine neuen ... Mit Ausnahme von diese, die verwendet ein Tool namens Theos aber ich nicht durchgehen könnte der gesamte Prozess.

Schließlich, wenn Sie benötigen deinstallieren für welchen Gründen auch immer, überprüfen Sie das Ende dieses Beitrags. In meinem Fall musste ich, weil ich nicht herausfinden konnte, warum alle der blauen diese ganze Methode aufgehört zu arbeiten, und ich konnte nicht mehr kümmern, da wir schon die lange gewartet Lizenz bekamen. (Freaking DUNS-Nummer so lange dauert ...)

.

.


.

.

.

2. Aktivieren Sie Xcode Build auf jailbroken Gerät

  1. Auf Ihrem jailbroken iPhone, installieren Sie die App AppSync von Quelle Hinzufügen ** http : //repo.hackyouriphone.org **

  2. SDK Anforderungen entfernen für die Code-Zeichen und Berechtigungen (ich liebe sed !):

    sudo /usr/bin/sed -i .bak '/_REQUIRED/N;s/YES/NO/' /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk/SDKSettings.plist
    
  3. Achten Sie zum iPhoneOS5.0.sdk Teil. Wenn Sie zum Beispiel iOS 4.2 SDK verwenden, einfach ersetzen Sie es entsprechend:

    sudo /usr/bin/sed -i .bak '/_REQUIRED/N;s/YES/NO/' /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/SDKSettings.plist
    
  4. Beschließen Sie die Anforderung Entfernung durch Xcode Patchen. Das bedeutet, binäre Bearbeitung:

    cd /Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Plug-ins/iPhoneOS\ Build\ System\ Support.xcplugin/Contents/MacOS/
    dd if=iPhoneOS\ Build\ System\ Support of=working bs=500 count=255
    printf "\xc3\x26\x00\x00" >> working
    /bin/mv -n iPhoneOS\ Build\ System\ Support iPhoneOS\ Build\ System\ Support.original
    /bin/mv working iPhoneOS\ Build\ System\ Support
    chmod a+x iPhoneOS\ Build\ System\ Support
    

    Wenn Sie Xcode geöffnet haben, starten Sie ihn für diese Änderung (und letzte) zu übernehmen.

  5. Öffnen "Projekt> Projekteinstellungen bearbeiten" (aus dem Menü). Klicken Sie auf das "Build" Tab. Finden "Code Signing-Identität" und sein Kind "Any iPhoneOS Device" in der Liste, und beide auf den Eintrag "Do not-Code-Zeichen „ :

    Danach fühlen Sie sich frei Schritt rückgängig zu machen 3. Zumindest in meinem Fall ging es ganz gut.

  6. Einstellung Xcode Code Schild mit unserem Maße selbst signiertes Zertifikat (den ersten How-To). Dieser Schritt kann wahrscheinlich übersprungen werden, wenn Sie nicht in der Lage zu debuggen sein:

    mkdir /Developer/iphoneentitlements401
    cd /Developer/iphoneentitlements401
    curl -O http://www.alexwhittemore.com/iphone/gen_entitlements.txt
    mv gen_entitlements.txt gen_entitlements.py
    chmod 777 gen_entitlements.py
    

    Schließen Sie Ihr iPhone in und offen Xcode. Open Window> Organizer. Wählen Sie das Gerät aus der Liste auf der linken Seite, und klicken Sie auf „Verwenden Sie für die Entwicklung.“ Sie werden für eine Provisioning-Website Login aufgefordert werden, klicken Sie auf Abbrechen. Es ist es legitim Bereitstellung einfacher zu machen, aber nicht illegitim macht nicht-Provisioning schwieriger.

    Jetzt Sie haben für jedes neue Projekt diesen letzten Teil zu tun, Sie machen . Gehen Sie in das Menü Projekt> New Build Phase> New Run Script Build-Phase. In dem Fenster, das Kopieren / Einfügen:

    export CODESIGN_ALLOCATE=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/codesign_allocate
    if [ "${PLATFORM_NAME}" == "iphoneos" ]; then
    /Developer/iphoneentitlements401/gen_entitlements.py "my.company.${PROJECT_NAME}" "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/${PROJECT_NAME}.xcent";
    codesign -f -s "iPhone Developer" --entitlements "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/${PROJECT_NAME}.xcent" "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/"
    fi
    

.

.


.

.

Deinstallieren

Für den 1. Teil:

sudo mv -f /Developer/Platforms/iPhoneOS.platform/Info.plist.bak /Developer/Platforms/iPhoneOS.platform/Info.plist

Für den 2. Teil:

sudo mv -f /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk/SDKSettings.plist.bak /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk/SDKSettings.plist
sudo mv -f iPhoneOS\ Build\ System\ Support.original iPhoneOS\ Build\ System\ Support

Falls Sie den Schritt zu tun haben 3 statt 2, es ist einfach zu modifizieren dementsprechend auch:

sudo mv -f /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/SDKSettings.plist.bak /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/SDKSettings.plist

für den Rest wird gerade zurückkehrt, was Sie auf XCode tat und Löschen von /Developer/iphoneentitlements401/gen_entitlements.py wenn Sie wollen:

sudo rm -f /Developer/iphoneentitlements401/gen_entitlements.py

Free Provisioning nach Xcode 7

Um Ihre Anwendung auf einem echten Gerät zu testen, anstatt zahlen die Apple Developer Gebühr (oder Ihr Gerät jailbreak), können Sie die neue kostenlose Bereitstellung verwenden, die Xcode 7 und iOS 9 unterstützt.

Hier werden die Schritte mehr oder weniger von die Dokumentation (was ziemlich gut ist, ist es so eine Lese geben):

1. Fügen Sie Ihre Apple ID in Xcode

Gehen Sie

zu XCode> Einstellungen> Konten tab> Schaltfläche Hinzufügen (+)> Hinzufügen Apple-ID. Siehe die Dokumentation für weitere Hilfe .

 image description hier

2. Klicken Sie auf die Registerkarte Allgemein im Projektnavigator

 image description hier

3. Wählen Sie Ihren Apple-ID aus dem Team-Popup-Menü.

 image description hier

4. Schließen Sie das Gerät und wählen Sie sie in das System-Menü.

 image description hier

5. Klicken Sie auf die Fix Probleme Taste

 image description hier

Wenn Sie einen Fehler über die Paketnamen ungültig zu bekommen, ist es eindeutig etwas ändern.

6. Führen Sie Ihre App

In Xcode, klicken Sie auf das Erstellen und Ausführen-Taste.

 image description hier

7. Vertrauen Sie auf die App-Entwickler in den Geräteeinstellungen

Nach Ihrer App ausgeführt wird, erhalten Sie einen Sicherheitsfehler erhalten, weil die App, die Sie ausführen möchten, nicht aus dem App Store ist.

 image description hier

Auf den Gerät , gehen Sie zu Einstellungen> Allgemein> Profile> your-Apfel-ID-Name > Vertrauen your-Apfel-ID-Namen > Trust.

8. Führen Sie Ihre App auf Ihrem Gerät wieder.

Das ist es. Sie können jetzt Ihre eigenen (oder andere Anwendungen, die Sie den Quellcode für haben) auszuführen, ohne den $ 99 Dollar auszuteilen zu haben. Danke, Apfel, für schließlich diese ermöglicht.

Sie können nicht, nicht, wenn Sie Anwendungen mit dem offiziellen SDK gebaut sprechen und gerade von Xcode bereitstellen.

Sie müssen auf Ihr Gerät jailbreaken.

Es gibt einen Weg iPhone-Apps zu implementieren, ohne zu zahlen Apfel Sie werden Ihr Gerät jailbreak und die Anweisungen in http://www.alexwhittemore.com/ folgen? p = 398

Nichts, was ich je gesehen habe signalisiert, dass Sie können Ad-hoc zu einem echten iPhone bereitstellen, ohne einen (bezahlten) -Zertifikat.

Ich wollte durch den Apple Developer gestern Abend und es in der Bereitstellungszertifikat fand ich so etwas wie - „Signing Teammitglieder“. Ich denke, es ist eine Möglichkeit, die Teammitglieder zu dem bezahlten Profil hinzuzufügen. Sie können nur auf die App-ID Owner (bezahlte ein) stellen Sie als Teammitglied hinzuzufügen. Ich bin mir nicht sicher. Noch immer auf der Suche.

Nein, es ist einfach, dies zu tun. In Xcode, stellen Sie die aktive Konfiguration auf Release. Ändern Sie das Gerät vom Simulator zum Gerät - was auch immer SDK. Wenn Sie direkt möchten Ihr iPhone exportieren, verbinden Sie es mit Ihrem Computer. Drücken Sie Build and Go. Wenn Ihr iPhone ist nicht an den Computer angeschlossen, wird eine Meldung kommen zu sagen, dass Ihr iPhone nicht angeschlossen ist.

Wenn dies auf Sie zutrifft: (iPhone wurde nicht angeschlossen)

Gehen Sie zu Ihrem Projektordner und dann in den Build-Ordner im Innern. Zum Release-iphoneos Ordner und nehmen Sie die App nach innen, per Drag & Drop auf iTunes-Symbol. Wenn Sie Ihre iTouch Gerät synchronisieren, wird es auf das Gerät kopieren. Es wird auch in iTunes als Anwendung für das iPhone erscheinen.

Hope, das hilft!

PS: Wenn es etwas über ein Zertifikat nicht gültig sagt, klicken Sie einfach auf das Projekt in Xcode, das kleine Projektsymbol im Dateistapel nach links und drücken Sie Apfel + I oder tun Get Info in der Menüleiste . Klicken Sie auf Erstellen an der Spitze. Unter Signing-Code, Code Signing Identität ändern -. Alle Geräte iPhone OS Anmeldung werden Sie nicht

Das ist wirklich alles hängt davon ab, welche Version von Xcode Sie verwenden als verschiedene Versionen unterschiedliche Methoden verwenden, um Ihr iPhone ohne Provisioning-Profil bereitstellen.

Xcode 3.2.1 ist eine gute Version und ist leicht zu sortieren, aber wir müssen wissen, welche Version Sie verwenden.

Lösung von Cawas geschrieben arbeitet perfekt mit XCode4 auch. Allerdings gibt es einige Änderungen an IDE UI, so müssen Sie einige der Forschung machen Run Script zu finden:)

Im Projekt-Navigator-Ansicht klicken Sie auf das Stammelement des Projekts, dann im mittleren Fenster Ziel auswählen, klicken Sie dann die Phasen Registerkarte Erstellen und unten sehen Sie, Build-Phase Schaltfläche Hinzufügen, klicken Sie und wählen Sie Hinzufügen Skript ausführen, dann Paste "Co-Design" Skript geschrieben von Cawas.

Es gibt keine Abhilfe. Sie können nur Ad-hoc-Anwendungen bereitstellen, wenn sie mit dem Gerät registriert sind. Dies verhindert, dass Sie von Ihrem eigenen App-Store-Gebäuden ..

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top