Umieszczam hasło iPhone'a w Xcode, aby nie musiałem odblokowywać iPhone'a przy każdej wersji?


13

Czy istnieje sposób, w jaki mógłbym umieścić kod blokady iPhone'a w Xcode, aby nie musiałem odblokowywać iPhone'a przy każdej kompilacji?

To naprawdę frustrujące, że muszę fizycznie odblokować iPhone'a przed każdą kompilacją.

Wiem, że programowanie na Androidzie pozwala na przełączenie urządzenia w tryb deweloperski, co ogranicza sen z urządzenia.

Odpowiedzi:


7

Czy wszyscy mogliby to zgłosić jako błąd ?

W tej chwili albo sobie z tym radzisz, albo, co gorsza, wyłączasz blokowanie. Żadna z tych opcji nie jest dobra.

Jeśli urządzenie iOS jest w trybie programisty i jest połączone z aktywną instancją Xcode, Xcode powinien mieć możliwość odblokowania telefonu.

W ten sposób możesz nie tylko pozostawić włączone blokowanie, ale także ponownie zablokuje się w momencie rozłączenia.


1
Dlaczego miałby to być błąd? Jest po prostu zaprojektowany z zamiarem. Chcesz, aby ktoś mógł pobrać na telefon dowolną aplikację, na wypadek gdyby została skradziona i „zwróciła” taką, jaka jest. Wyraźnie funkcja bezpieczeństwa. Sprawianie, by brzmiało to tak, jakby włączenie telefonu w funkcję automatycznego blokowania nigdy nie było tak trudne. Istnieje wiele możliwości obejścia tego „problemu”, jednak Apple nie może zaplanować lenistwa użytkownika. i tak, jestem programistą i bardzo aktywnie
działam

1
Najpierw stwierdzisz, że autolock jest dobrą funkcją, a następnie powiesz, jak łatwo jest go wyłączyć. Stwierdzenia te nie są ze sobą zgodne. Wyłączenie funkcji automatycznego blokowania jest generalnie złym pomysłem, ale konieczne podczas programowania. Funkcja, która robi to automatycznie po podłączeniu do Xcode, jest bardzo dobrym pomysłem, zapobiegając przypadkowemu wyłączeniu się funkcji, o której mówisz, że jest dobra.
Maury Markowitz,

Błędnie interpretujesz moje słowa, aby dostosować je do swoich argumentów. Nigdy nie powiedziałem dobrej funkcji. Wspomniana funkcja bezpieczeństwa. I nigdy nie powiedziałem, że łatwo się wyłączyć. Stwierdzono, że przesadzasz, aby to zrobić. Niezależnie od tego, nie jestem 5-latkiem i nie chcę traktować cię jako jednego z nich. Podaję tylko swoją opinię i perspektywę. Wszystko zależy od twoich preferencji programistycznych. Jeśli przyzwyczaisz się wyłączyć automatyczną blokadę, a następnie przyzwyczaisz się ją włączyć po zakończeniu, stanie się ona drugą naturą. Po prostu czuję się przesadnie w sytuacji i rozwiązaniach. Nie nazwałbym tego błędem, moim głównym argumentem, tylko żądaniem funkcji. Pozdrawiam
zabłysnęło

@soulshined, funkcja automatycznego odblokowania wymagałaby, aby urządzenie iOS najpierw ufało komputerowi (zwykłe zatwierdzenie zaufania, które zdarza się raz), więc nikt nie może pobrać na nią żadnej aplikacji bez komputera. Biorąc pod uwagę, że Twój komputer powinien być przede wszystkim chroniony hasłem, nie wiem, jak by to był problem z bezpieczeństwem. Jeśli ktoś ma komputer i twoje hasło do niego, masz znacznie większe problemy. Ponadto wyłączenie funkcji automatycznej blokady jest znacznie większym problemem bezpieczeństwa niż zaufany komputer automatycznie odblokowujący urządzenie.
Arda

2

Możesz zapobiec zasypianiu urządzenia w Ustawieniach → Ogólne → Automatyczna blokada → Nigdy . Oznacza to, że urządzenie pozostanie odblokowane i nie będziesz musiał go odblokowywać. Ponieważ jestem jailbroken, mam ten zestaw automatycznie, gdy moje urządzenie jest podłączone do komputera z uruchomionym Xcode, ale ręczna zmiana tego ustawienia również będzie działać dobrze.

Alternatywnie możesz ustawić Ustawienia → Kod dostępu → Wymagaj kodu dostępu na dłuższy okres, aby Twój kod dostępu nie był wymagany, jeśli musisz go odblokować. Nie zapomnij zresetować tego ustawienia do pierwotnego ustawienia po zakończeniu programowania.


Wydaje się, że automatyczne blokowanie -> nigdy nie jest już opcją w
iOS

1

O ile wiem, nie jest to możliwe . Jedynym możliwym rozwiązaniem byłoby oczywiście wyłączenie hasła iPhone'a podczas sesji programowania.


1

To jest sposób obejścia problemu.

Na AppDelegate.swiftdodatek ten kod

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
  }

}

Wpływa to tylko na telefon podczas działania aplikacji. Jeśli zabijesz aplikację i będziesz przez chwilę nad nią pracował, ekran może się zablokować przed następnym uruchomieniem.
Tom Harrington

0

Prawdziwą odpowiedzią jest to, że obecnie musisz zrobić jailbreak, aby zrobić to tak, jak wspominał @grgarside.

Użyj Aktywatora (zainstaluj z Cydii, jeśli jeszcze go nie masz) i ustaw akcję na Anywhere -> Connected (Power)akcję, która wyłącza Auto-Lock. Postępuj odwrotnie (włącz Auto-Lock) dla Disconnected (Power).


1
Nie powinniśmy robić jailbreaka, żeby to zrobić. Przejdź do Apple Bug Reporter i zgłoś to. Jeśli wystarczająca liczba z nas to zrobi, naprawią to.
Maury Markowitz

0

W Xcode 7.3 wydaje się, że musisz odblokować urządzenie tylko na pierwszej wersji. Następnie urządzenie pozostanie odblokowane, dopóki go nie odłączysz lub nie wyjdziesz z testowanej aplikacji.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.