2017-09-20 23 views
9

Sử dụng Xamarin.Forms, Visual Studio 2017 trên PC và MacBook Air để tạo ứng dụng dành cho thiết bị di động iOS.lỗi MT0117: Không thể chạy ứng dụng 32 bit trên trình mô phỏng chỉ hỗ trợ ứng dụng 64 bit (iPhone 6s)

Hôm qua, tôi cập nhật phiên bản VS lên 15.3.5, tôi cũng cập nhật MacBook Air (qua VS cho Mac) để có phiên bản iOS mới nhất (11.0) Tôi đã tạo ứng dụng mới (Xamarin.Forms) để kiểm tra cập nhật và mọi thứ hoạt động như mong đợi.

Tôi đã cố gắng chạy một ứng dụng cũ hơn, mà tôi đã phát triển những ngày trước và tôi không thể chạy nó trên máy Mac. Tôi gặp lỗi sau:

Khởi chạy không thành công. Không thể khởi chạy ứng dụng 'AppName.iOS' trên 'iPhone 6s iOS 11.0'. Lỗi: lỗi MT0117: Không thể khởi chạy ứng dụng 32 bit trên trình mô phỏng chỉ hỗ trợ các ứng dụng 64 bit (iPhone 6s). . Vui lòng kiểm tra nhật ký để biết thêm chi tiết. Ứng dụng đã bị chấm dứt.

Tiếp theo, tôi đã cắm thiết bị (iPhone) vào máy Mac và cố gắng chạy ứng dụng đến thiết bị. Tôi đã có thể chạy ứng dụng, nhưng tôi nhận được một thông báo cho tôi biết rằng ứng dụng sẽ ngừng chạy ngay sau khi tôi cập nhật iOS của Thiết bị (Tôi không cập nhật iOS trên thiết bị).

Vì vậy, câu hỏi là làm cách nào để giải quyết vấn đề? Điều này có liên quan gì đến ứng dụng của tôi hay các gói tôi đang sử dụng không? Có cài đặt nào tôi cần đặt không? Có thể chạy một trình mô phỏng cũ trên máy Mac không?

Cảm ơn

Trả lời

24

Nếu bạn thay đổi kiến ​​trúc hỗ trợ thành "i386 + x86_64" hoặc "x86_64", nó sẽ giải quyết được sự cố của bạn.

+0

Vấn đề là như sau. Tôi đã tạo cấu hình xây dựng tùy chỉnh. Trong khi tạo cấu hình tùy chỉnh, bạn có thể sao chép cài đặt từ hiện tại. Tôi chọn sao chép từ Debug vì tôi muốn nó phát triển. Dường như không phải tất cả các thuộc tính của cấu hình xây dựng đều được sao chép! Một trong những thuộc tính không được sao chép và trên thực tế nó trống (!) Là “Kiến trúc được hỗ trợ”. Vì vậy, chỉ bằng cách đặt thuộc tính thành một giá trị, tôi đã có thể chạy ứng dụng. Câu trả lời của bạn đã chỉ ra nơi để tìm kiếm giải pháp để tôi xem xét câu trả lời là chính xác. – Dimitris

+0

Để lưu ý rằng nếu không rõ ràng nếu nói về giả lập hoặc VS, đó là VS. Bạn có thể nhấp chuột phải vào dự án của bạn -> properties -> iOS build -> thay đổi "Kiến trúc được hỗ trợ" thành 'i386 + x86_64' –

0

Với Xcode 9 chúng ta có thể cài đặt mô phỏng lại như xa như iOS 8.1 - một ít nhất đó là những gì các "Components" tab cho biết trong các ưu đãi Xcode.

Tôi không sử dụng bộ mô phỏng thường xuyên vì công ty của tôi có một vài thiết bị thử nghiệm với tất cả các phiên bản iOS được hỗ trợ và tôi tin tưởng thử nghiệm trên phần cứng thực tế nhiều hơn thử nghiệm trên trình mô phỏng.

+0

Có nhiều trình mô phỏng nhưng tôi nghĩ rằng tất cả chúng đều chạy iOS 11 ngay sau khi cập nhật. Dù sao, việc thay đổi phiên bản của trình mô phỏng là một "bản vá" sẽ giúp tôi tiếp tục phát triển nhưng vấn đề thực sự là cách giải quyết lỗi thực tế. – Dimitris

Các vấn đề liên quan