2013-08-29 62 views
45

Khi khởi chạy ứng dụng từ URL, có sự khác biệt giữa việc URL có đang khởi chạy ứng dụng hay không hoặc liệu ứng dụng có tiếp tục ứng dụng đã được đưa vào hay không trạng thái treo.iOS: Cách gỡ lỗi "mới khởi chạy" ứng dụng từ URL

Câu hỏi của tôi là, làm cách nào để gỡ lỗi quy trình "khởi chạy mới" từ URL? Nhấn "Chạy" trong Xcode sẽ tự động mở ứng dụng. Sau đó, tôi phải tạm dừng ứng dụng để truy cập Safari và truy cập trang web thử nghiệm của mình. Nhưng nếu tôi đóng ứng dụng bị tạm ngưng, Xcode sẽ không còn được đính kèm nữa và tôi không thể gỡ lỗi.

Trả lời

47

Các bước này có thể được theo dõi trên thiết bị. Được thành lập tại số link này.

  1. Chạy ứng dụng từ Xcode để cài đặt ứng dụng từ Xcode để cài đặt ứng dụng trên thiết bị của bạn rồi dừng lại từ Xcode.
  2. Buộc thoát ứng dụng khỏi giao diện người dùng của trình chuyển đổi ứng dụng trên thiết bị.
  3. Điều hướng đến lược đồ cho dự án trong Xcode. Trong tab Thông tin của phần Chạy , có nút radio cho "Chờ thực thi để được khởi chạy". Đảm bảo rằng tùy chọn này được chọn thay vì tùy chọn "Tự động" .
  4. Chạy ứng dụng từ Xcode. Nó sẽ không mở trên thiết bị, nhưng trình gỡ lỗi sẽ đợi nó mở và sau đó nó sẽ đính kèm vào nó.

Trên trình giả lập theo đề xuất của Marc-Alexandre Bérubé.

  1. Chạy ứng dụng của bạn trên trình mô phỏng.
  2. Buộc thoát ứng dụng trên trình mô phỏng. Nhấn cmd+shift+(hit h twice). Vuốt ứng dụng lên.
  3. Mở thiết bị đầu cuối của bạn và nhập số xcrun simctl openurl booted http://yourdomain/path này.
+3

Để thử nghiệm dễ dàng hơn bằng cách sử dụng Trình mô phỏng iOS, chúng tôi có thể sử dụng Thiết bị đầu cuối và dán lệnh 'xcrun simctl openurl được khởi động http: // yourdomain/path' để khởi chạy ứng dụng bằng URL chúng tôi muốn. –

+1

Nhưng Xcode sẽ không đính kèm ngay lập tức khi tôi khởi động ứng dụng như vậy - phải làm gì khi tôi muốn nó dừng lại ở điểm ngắt trong mã phân tích/định tuyến url? – fabb

+0

@fabb Nếu bạn làm theo các bước chính xác, nó sẽ đánh bạn điểm ngắt trong phân tích cú pháp url. –

31

Bạn cần định cấu hình sơ đồ ứng dụng Xcode của mình để chờ ứng dụng được khởi chạy theo cách thủ công. Đây là cách bạn thực hiện: http://blogmobile.itude.com/2013/09/03/how-to-debug-deep-linking-in-ios/.

Sau đó, bạn cần sao chép URL khởi chạy và dán URL đó vào Mobile Safari. Điều này sẽ khởi chạy ứng dụng của bạn và làm cho Xcode gắn liền với quy trình ứng dụng đang chạy.

+0

Nếu bạn đang gỡ lỗi trên trình giả lập, dưới đây là mẹo: Yu cũng có thể chỉnh sửa URL của một đoạn clip đã lưu. Chúng chỉ là plists trong ~/Library/Application Support/iPhone Simulator/7.1-64/Library/WebClips. (Điều chỉnh 7.1-64 nếu cần.) –

+0

Cảm ơn bạn! Bạn đã cứu ngày của tôi! –

+0

Mẹo: Tôi tìm thấy các WebClips của tôi trong ~/Library/Developer/CoreSimulator/Devices/{GUID}/data/Library/WebClips. (Xcode 7.1.1/Simulator 9.1) –