2015-07-17 15 views
7

Kể từ khi các tệp nhị phân nhúng được giới thiệu trong iOS 8, tôi đã muốn chuyển rất nhiều mã chung vào các khung công tác. Tôi quyết định chờ một năm trước khi thực hiện nó và năm nay, với Xcode 7 Beta và iOS 9, tôi bắt đầu làm điều đó.Xây dựng một khung Swift với Xcode 7 (Beta 3) để sử dụng như một Nhúng nhị phân

Tôi đã bắt đầu dự án khung công tác Cocoa Touch trong Xcode 7 và tôi muốn biên dịch nó thành một khung có thể sử dụng. Tôi có thể làm cho nó để biên dịch dự án của tôi thành một .framework, nhưng có một vài vấn đề; cụ thể là, khung làm việc dường như không thể nhập được vào các dự án mới (tôi sẽ mô tả các bước tôi đã thực hiện trong thời gian ngắn). Bởi vì điều đó, tôi không chắc chắn nếu khuôn khổ của tôi có bất kỳ biểu tượng có thể nhìn thấy.

Đây là những gì tôi đã làm để tạo ra các khung:

  1. Tạo Khung của tôi như là một Touch Khung Cocoa.
  2. Đã đi tới các Giai đoạn xây dựng của mục tiêu, chuyển đến Tiêu đề và thêm tất cả các tệp Swift của tôi vào phần "Công khai", với hy vọng sẽ xuất tất cả các biểu tượng của tôi mà không phải đánh dấu chúng là public.
  3. Tôi đã cố gắng lưu trữ dự án của mình dưới dạng khuôn khổ. Hiện tại, có vẻ như Xcode 7 Beta 3 có một lỗi (sẽ báo cáo nó sau ngày hôm nay) trong đó nó tạo ra các tệp lưu trữ bị hỏng. Vì lý do này, tôi không thể lấy khung làm việc của tôi từ Cửa sổ tổ chức. Để giải quyết vấn đề này, tôi đã thay đổi lược đồ của hành động Run trong Xcode từ Debug to Release, xây dựng nó và lấy nó được tạo ra .framework từ thư mục build/iphoneos-release của dự án của tôi. Đây là một bài kiểm tra nhanh nên tôi không cần các khung công tác được tạo ra cho trình giả lập.

Và đây là những gì tôi đã làm để cố gắng thêm khung làm việc cho một dự án mới:

  1. Tạo một "Khung" nhóm (đối với mục đích tổ chức) và kéo khung đó, chọn "yes" khi nó hỏi tôi có muốn sao chép tập tin vào thư mục dự án của tôi không.
  2. Đã đi đến cài đặt của mục tiêu của tôi, đã xóa khung của tôi khỏi "Thư viện được liên kết" (đã được thêm vào đó tự động), thêm nó vào Thư viện nhúng để thay thế. Điều này đã thêm khuôn khổ vào các Thư viện được Liên kết một lần nữa, vì vậy tôi phải loại bỏ nó khỏi đó hai lần. Việc rời khỏi khung công tác trong Thư viện được liên kết gây ra lỗi liên kết (không thể tìm thấy khung công tác - không biết tại sao nhưng tôi nghĩ nó không liên quan đến vấn đề của tôi và điều gì đó tôi cũng nên báo cáo với Apple), nhưng một khi bạn xóa nó biên dịch tốt khi bạn thêm nó vào các tệp nhị phân nhúng.
  3. Đã cố gắng nhập khung của tôi trong một tệp. Xcode phàn nàn có "không có mô-đun như vậy".

Thật không may, mặc dù thực tế là các khung công tác nhúng đã tồn tại khoảng một năm, tôi không thể tìm thấy nhiều bài viết về chủ đề này.

Vì vậy, câu hỏi của tôi là: Tôi có tạo khung chính xác không, làm cho khuôn khổ của tôi/bất kỳ điều gì khác có thể bị lỗi do lỗi Xcode 7 Beta? Hoặc là có một thủ tục khác để tạo một khung mà tôi muốn sử dụng như là một nhị phân nhúng? Tôi có lẽ nên đề cập đến rằng tôi muốn làm cho thư viện nguồn mở này, và tôi nghĩ rằng phân phối một tập tin đồng bằng .framework cho những người muốn sử dụng nó sẽ được gọn gàng.

Trả lời

3

Tôi Đã gặp vấn đề tương tự trên Xcode 7. Tôi đã giải quyết nó bằng cách chỉnh sửa cài đặt bản dựng của dự án (cài đặt bao gồm khung công tác).

Bằng cách đặt các khung Search Paths trường để $ (PROJECT_DIR) hoặc đường dẫn đến thư mục chứa file .framework nó sẽ giúp Xcode tìm ra mô-đun.

+0

Được rồi, điều này bằng cách nào đó làm cho nó biên dịch. Nhưng đối với một số lý do, vẫn làm 'import myFramework' tiếp tục nói rằng module không tồn tại. –

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