Đưa mật mã iPhone vào Xcode, vì vậy tôi sẽ không cần mở khóa iPhone cho mọi bản dựng?


13

Có cách nào để tôi có thể đặt mã khóa iPhone của mình vào Xcode không, vì vậy tôi không cần phải mở khóa iPhone cho mọi bản dựng?

Điều thực sự khó chịu là tôi cần phải mở khóa vật lý iPhone của mình trước mỗi lần xây dựng.

Tôi biết để phát triển trên Android, họ cho phép bạn đặt thiết bị ở chế độ dev, điều này hạn chế thiết bị ngủ.

Câu trả lời:


7

Mọi người có thể vui lòng báo cáo đây là một lỗi không?

Khi nó đứng, bạn hoặc chịu đựng nó, hoặc tệ hơn, tắt khóa. Không có lựa chọn nào là tốt.

Nếu thiết bị iOS ở chế độ nhà phát triển và được kết nối với phiên bản Xcode đang hoạt động, Xcode sẽ có thể giữ cho điện thoại được mở khóa.

Bằng cách đó, bạn không chỉ có thể rời khỏi khóa mà còn khóa lại ngay khi bạn ngắt kết nối.


1
Tại sao điều này sẽ là một lỗi? Nó được thiết kế đơn giản theo ý định. Bạn sẽ muốn ai đó có thể tải xuống bất kỳ ứng dụng nào họ muốn trên điện thoại của mình nếu có cơ hội bị đánh cắp & "trả lại". Rõ ràng là một tính năng bảo mật. Việc bạn phát ra âm thanh như thể biến điện thoại thành không bao giờ tự động khóa là một công việc khó khăn. Có nhiều lựa chọn để khắc phục "vấn đề" này, tuy nhiên Apple không thể lên kế hoạch cho sự lười biếng cuối cùng của người dùng. & vâng Tôi là một nhà phát triển và rất tích cực trên SO
soulshined

1
Trước tiên, bạn nói rằng autolock là một tính năng tốt, và sau đó cho biết việc tắt nó dễ dàng như thế nào. Những tuyên bố đó không đồng ý với nhau. Tắt autolock nói chung là một ý tưởng tồi, nhưng cần thiết trong quá trình phát triển. Một tính năng thực hiện điều này tự động trong khi cắm vào Xcode là một ý tưởng rất tốt, ngăn mọi người vô tình vô hiệu hóa tính năng mà bạn nói là tốt.
Maury Markowitz

Bạn hiểu sai lời tôi cho phù hợp với lập luận của bạn. Tôi không bao giờ nói tính năng tốt. Tính năng bảo mật cho biết. Và tôi không bao giờ nói dễ tắt. Nói rằng bạn đã phóng đại các thủ tục để làm như vậy. Bất kể, tôi không phải là một đứa trẻ 5 tuổi và cũng không muốn coi bạn là một. Tôi chỉ nêu quan điểm và quan điểm của tôi. Đó là tất cả về sở thích phát triển của bạn. Nếu bạn tạo thói quen tắt khóa tự động và sau đó tạo thói quen bật nó một lần, nó sẽ trở thành bản chất thứ hai. Tôi chỉ cảm thấy bạn quá phóng đại tình hình & giải pháp. Tôi sẽ không gọi nó là một lỗi, đối số chính của tôi, chỉ là một yêu cầu tính năng. Chúc mừng
soulshined

@soulshined, một tính năng tự động mở khóa sẽ yêu cầu thiết bị iOS phải tin tưởng vào máy tính trước tiên (sự chấp thuận tin cậy thông thường xảy ra một lần), vì vậy không ai có thể tải xuống bất kỳ ứng dụng nào trên máy tính mà không có máy tính của bạn. Xem xét máy tính của bạn nên được bảo vệ bằng mật khẩu ngay từ đầu, tôi không thấy có vấn đề gì về bảo mật. Nếu ai đó giữ máy tính của bạn và mật khẩu của bạn với nó, bạn có vấn đề lớn hơn nhiều. Hơn nữa, tắt tính năng tự động khóa là một vấn đề bảo mật lớn hơn nhiều so với một máy tính đáng tin cậy tự động mở khóa thiết bị.
Arda

2

Bạn có thể ngăn thiết bị ngủ trong Cài đặt → Chung → Khóa tự động → Không bao giờ . Điều này có nghĩa là thiết bị sẽ được mở khóa và bạn sẽ không cần phải mở khóa. Vì tôi đã bẻ khóa, tôi có cài đặt này tự động khi thiết bị của tôi được kết nối với máy tính có Xcode đang chạy, nhưng thay đổi cài đặt này theo cách thủ công cũng sẽ hoạt động tốt.

Ngoài ra, bạn có thể đặt Cài đặt → Mật mã → Yêu cầu Mật mã thành một khoảng thời gian dài hơn để mật khẩu của bạn không bắt buộc nếu bạn cần mở khóa. Đừng quên đặt lại cài đặt này về cài đặt ban đầu sau khi bạn hoàn thành phát triển.


Có vẻ như khóa tự động -> không bao giờ không còn là một tùy chọn trong ios 9.
puzzl

1

Theo tôi biết điều này là không thể . Rõ ràng, giải pháp khả thi duy nhất là vô hiệu hóa mật mã của iPhone trong các phiên lập trình của bạn.


1

Đây là một mẹo giải quyết.

Trong AppDelegate.swiftthêm mã này

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
  }

}

Điều đó chỉ ảnh hưởng đến điện thoại trong khi ứng dụng đang chạy. Nếu bạn tắt ứng dụng và hoạt động trong một thời gian, màn hình sẽ có thể bị khóa trước lần tiếp theo bạn chạy nó.
Tom Harrington

0

Câu trả lời thực sự là bạn hiện cần phải bẻ khóa để làm điều này như @grgarside đã ám chỉ.

Sử dụng Trình kích hoạt (cài đặt từ Cydia nếu bạn chưa có) và đặt hành động cho Anywhere -> Connected (Power)hành động vô hiệu hóa Tự động khóa. Làm ngược lại (bật Auto-Lock) cho Disconnected (Power).


1
Chúng ta không nên bẻ khóa để làm điều này. Xin vui lòng, đi đến Trình báo cáo lỗi của Apple và báo cáo nó. Nếu đủ chúng ta làm như vậy, họ sẽ sửa nó.
Maury Markowitz

0

Trong Xcode 7.3, dường như bạn chỉ phải mở khóa thiết bị của mình trong lần xây dựng đầu tiên. Sau đó, thiết bị của bạn sẽ được mở khóa cho đến khi bạn rút phích cắm hoặc thoát khỏi ứng dụng bạn đang kiểm tra.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.