iPhone-Passcode in Xcode einfügen, damit ich mein iPhone nicht für jeden Build entsperren muss?

Gibt es eine Möglichkeit, meinen iPhone-Sperrcode in Xcode einzufügen, damit ich mein iPhone nicht für jeden Build entsperren muss?

Es wird wirklich frustrierend, dass ich mein iPhone vor jedem Build physisch entsperren muss.

Ich weiß, dass Sie für die Entwicklung auf Android das Gerät in den Entwicklungsmodus versetzen können, wodurch das Gerät nicht in den Ruhezustand versetzt wird.

Antworten (6)

Kann das bitte jeder als Bug melden ?

So wie es aussieht, ertragen Sie es entweder, oder noch schlimmer, schalten Sie die Sperre aus. Keine Option ist gut.

Wenn sich das iOS-Gerät im Entwicklermodus befindet und mit einer aktiven Xcode-Instanz verbunden ist, sollte Xcode in der Lage sein, das Telefon entsperrt zu halten.

Auf diese Weise können Sie die Sperre nicht nur eingeschaltet lassen, sondern sie wird sofort wieder gesperrt, wenn Sie die Verbindung trennen.

Warum sollte das ein Fehler sein? Es ist einfach absichtlich entworfen. Sie möchten, dass jemand in der Lage ist, jede gewünschte App auf Ihr Telefon herunterzuladen, wenn sie gestohlen und so wie sie ist "zurückgegeben" wird. Ganz klar ein Sicherheitsfeature. Es ist so eine mühsame Aufgabe, dass Sie es so klingen lassen, als ob Sie das Telefon nie automatisch sperren würden. Es gibt mehrere Möglichkeiten, dieses "Problem" zu umgehen, aber Apple kann keine Faulheit der Benutzerseite einplanen. & ja, ich bin Entwickler und sehr aktiv bei SO
Sie erklären zuerst, dass die automatische Sperre eine gute Funktion ist, und sagen dann, wie einfach es ist, sie auszuschalten. Diese Aussagen widersprechen sich. Das Deaktivieren der automatischen Sperre ist im Allgemeinen eine schlechte Idee, aber während der Entwicklung erforderlich. Eine Funktion, die dies automatisch macht, während sie in Xcode eingesteckt ist, ist eine sehr gute Idee, um zu verhindern, dass Leute versehentlich die Funktion deaktivieren, die Sie für gut halten.
Sie interpretieren meine Worte falsch, um sie Ihren Argumenten anzupassen. Ich habe nie gesagt, gute Funktion. Besagtes Sicherheitsfeature. Und ich habe nie gesagt, dass man leicht abschalten kann. Sie haben angegeben, dass Sie die Verfahren übertrieben haben, um dies zu tun. Trotzdem bin ich kein 5-Jähriger und möchte dich auch nicht als einen behandeln. Ich gebe nur meine Meinung und Perspektive wieder. Es dreht sich alles um Ihre Entwicklungspräferenzen. Wenn Sie es sich zur Gewohnheit machen, die automatische Sperre auszuschalten und es sich dann zur Gewohnheit machen, sie wieder einzuschalten, wird es zur zweiten Natur. Ich habe nur das Gefühl, dass Sie die Situation und die Lösungen übertrieben haben. Ich würde es nicht einen Fehler nennen, mein Hauptargument, sondern nur eine Feature-Anfrage. Beifall
@soulshined, eine automatische Entsperrfunktion würde erfordern, dass das iOS-Gerät dem Computer zuerst vertraut (die übliche Vertrauensgenehmigung, die einmal erfolgt), sodass niemand ohne Ihren Computer eine App darauf herunterladen kann. Wenn man bedenkt, dass Ihr Computer in erster Linie passwortgeschützt sein sollte, sehe ich nicht, wie es zu Sicherheitsproblemen kommen könnte. Wenn jemand Ihren Computer und Ihr Passwort hat, haben Sie viel größere Probleme. Darüber hinaus ist das Deaktivieren der automatischen Sperrfunktion ein viel größeres Sicherheitsproblem als ein vertrauenswürdiger Computer, der ein Gerät automatisch entsperrt.

Unter Einstellungen → Allgemein → Auto-Sperre → Nie können Sie verhindern, dass das Gerät in den Ruhezustand versetzt wird . Das bedeutet, dass das Gerät entsperrt bleibt und Sie es nicht entsperren müssen. Da ich einen Jailbreak habe, habe ich diese Einstellung automatisch, wenn mein Gerät mit einem Computer verbunden ist, auf dem Xcode ausgeführt wird, aber das manuelle Ändern dieser Einstellung funktioniert auch gut.

Alternativ können Sie Einstellungen → Passcode → Passcode erforderlich auf ein längeres Intervall einstellen, sodass Ihr Passcode nicht erforderlich ist, wenn Sie ihn entsperren müssen. Vergessen Sie nicht, diese Einstellung nach Abschluss der Entwicklung wieder auf die ursprüngliche Einstellung zurückzusetzen.

Es scheint, dass Auto-Lock -> Never keine Option mehr in iOS 9 ist.

Dies ist ein Workaround-Trick.

Fügen AppDelegate.swiftSie diesen Code hinzu

class AppDelegate: UIApplicationDelegate {

let isDebug: Bool = {
        var isDebug = false
        func setDebug() -> Bool {
            isDebug = true
            return true
        }
        assert(setDebug())
        return isDebug
    }()

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {

    // for development only
    // to make iPhone screen always on when developing app. 
    // should be removed when app is released

    if isDebug {
        print("DEBUG MODE")
        UIApplication.shared.isIdleTimerDisabled = true
    }

    return true
  }

}
Das wirkt sich nur auf das Telefon aus, während die App ausgeführt wird. Wenn Sie die App beenden und eine Weile daran arbeiten, wird der Bildschirm möglicherweise gesperrt, bevor Sie sie das nächste Mal ausführen.

Soweit ich weiß ist dies nicht möglich . Die einzig mögliche Lösung wäre natürlich, den Passcode des iPhones während Ihrer Programmiersitzungen zu deaktivieren.

Die eigentliche Antwort ist, dass Sie derzeit einen Jailbreak benötigen, um dies zu tun, wie @grgarside anspielte.

Verwenden Sie Activator (installieren Sie es von Cydia, wenn Sie es noch nicht haben) und legen Sie die Aktion für Anywhere -> Connected (Power)auf die Aktion fest, die die automatische Sperre deaktiviert. Machen Sie das Gegenteil (aktivieren Sie Auto-Lock) für Disconnected (Power).

Wir sollten dafür keinen Jailbreak durchführen müssen. Bitte gehen Sie zum Apple Bug Reporter und melden Sie es. Wenn genug von uns das tun, werden sie das beheben.

In Xcode 7.3 scheint es, dass Sie Ihr Gerät nur beim ersten Build entsperren müssen. Danach bleibt Ihr Gerät entsperrt, bis Sie es vom Stromnetz trennen oder die zu testende App beenden.