Điều này dành cho Xcode 4.5.x iOS armv7 armv7 và mô phỏng và thiết kế dự án Xcode:Xcode với iOS - Tạo thư viện theo cách dễ dàng chạy trong chế độ gỡ lỗi, phân phối, lặp lại
Tôi có một dự án "A" là một ứng dụng trong cửa hàng ứng dụng. Tôi có một dự án "B" là thư viện sẽ được sử dụng trong A làm phụ thuộc, nhưng cũng được phân phối dưới dạng thư viện của bên thứ ba cho các công ty khác để sử dụng trong ứng dụng của họ. (ứng dụng bên thứ 3 của các công ty khác được thể hiện trong trường hợp này là "Y").
Dưới đây là các yêu cầu:
- Phải có khả năng chạy "A" trong chế độ gỡ lỗi, và tất nhiên debug lồng dự án "B" đồng thời, trong việc xây dựng tương tự/phiên.
- Từ "A" tôi có thể CMD + Nhấp vào chữ ký phương thức từ "B" và chuyển ngay vào tệp src đó, nơi tôi tự do chỉnh sửa và sau đó biên dịch lại, như thể nó là từ cùng một dự án.
- Dấu "X" tại một số công ty khác phải có khả năng dễ dàng kéo thư viện "B" của chúng tôi vào dự án "Y", trong đó "B" là thư viện tĩnh. "Y" tất nhiên gọi các phương thức từ một tập con của các tệp tiêu đề thực sự của "B". Chỉ các tệp từ tập hợp con này mới được đưa vào phân phối cho Dev "X". Không phải sửa đổi bất kỳ thứ gì trong dự án Xcode của mình, chỉ cần kéo thư mục cho "B" (chứa lib tĩnh và tập con của tệp tiêu đề) vào dự án của mình và bấm vào "Sao chép tài nguyên, tạo tài liệu tham khảo, v.v. "
- Tôi cần có khả năng tạo thư viện tĩnh "B" dễ dàng, dựa trên cùng một tệp tôi đã chỉnh sửa toàn bộ thời gian này khi tôi lặp lại và gỡ lỗi dự án "B" bên trong dự án phụ thuộc "A" của nó .
- "B" không có tài nguyên ngoài mã nguồn - không có tài sản hình ảnh, xib hoặc bất kỳ thứ gì như thế.
- Từ "B", tôi nhấp vào "Lưu trữ" và Poof! có một lib tĩnh (phải là nhị phân chất béo, do đó tôi có nghĩa là nó hoạt động trên các mô phỏng + armv7 + armv7s, xin vui lòng !!) với các tập tin tiêu đề cần thiết đã sẵn sàng để được phân phối.
- Tất cả điều này phải là phê duyệt cửa hàng ứng dụng -friendly
- Điều này cũng phải đáng tin cậy. Sẽ không tốt nếu tôi phải tiếp tục quay lại để thực hiện nhiều thay đổi về cấu hình mỗi khi tôi thêm một tệp.
UPDATE:
*QUAN TRỌNG NHẤT: Đây cần phải được một repo tôi có thể kiểm tra đó là một end-to-end mẫu đầy đủ về những gì đang tìm kiếm, và tôi cần để có thể mở Xcode 4.5.2+ và nhấp vào chơi và xem điều này xây dựng, không đau.
500 điểm cho bất cứ ai có thể cung cấp cho tôi một dự án mẫu thể hiện tất cả những gì tôi đã trình bày ở trên, "A", "B", và "Y" (với "B" lib tĩnh sử dụng như một dep) . Tất cả những gì tôi cần là tập hợp các dự án bộ xương ("A", "B" (lồng vào bên trong "A") và "Y") cho biết cách thực hiện điều này. Xin vui lòng không giữ lại câu trả lời cho đến khi tiền thưởng được đăng. Nếu nó đáp ứng yêu cầu của tôi, tôi sẽ đảm bảo rằng bạn nhận được điểm thưởng của tôi.
Tôi phần nào lo lắng rằng với những hạn chế của Xcode, điều này thậm chí không thể theo cách không phải là một rắc rối hoàn chỉnh. Hãy chứng minh tôi sai.
CẬP NHẬT: Tôi quyết định không quan tâm đến armv6 nữa. Tạm biệt, armv6.
Tín dụng bổ sung nếu bạn có thể lấy armv6 được cuộn vào đầu ra dist cùng với armv7, armv7, i386/simulator.
P.S. Tôi hứa rằng tôi sẽ được giải thưởng hợp lý các điểm. Tôi không muốn giữ lại chúng về mặt kỹ thuật. Nếu bạn làm cho cuộc sống của tôi ít đau đớn hơn trong khu vực này, tôi sẽ sẵn sàng trao cho bạn những điểm.
Cảm ơn bạn đã trả lời, có vẻ đầy hứa hẹn ngay từ cái nhìn đầu tiên. Tôi sẽ đi sâu vào nó sau ngày hôm nay sau khi tôi có một khoảnh khắc miễn phí. Nếu điều này giải quyết được vấn đề của tôi, tôi sẽ trao cho bạn những điểm. Nó nói "12 giờ nữa" cho đến khi tôi có thể cung cấp tiền thưởng. Cảm ơn!! – jpswain
Vì vậy, tôi đã đi qua các dự án libturbojpeg của bạn. Có vẻ như một số mã C-baller. Tôi biết cách sử dụng lipo để kết hợp các bản dựng, nhưng trên thực tế mọi thứ khác đều muốn một cách dễ dàng chạy dự án lib tĩnh của tôi như là mã nguồn bình thường bên trong dự án phụ thuộc và như một thư viện tĩnh bằng nhau và dễ dàng hoán đổi. Bạn có xảy ra một ví dụ kết hợp libturbojepg theo cách đó không? Cảm ơn!! Jamie – jpswain
Chỉ cần thả tệp dự án để xây dựng thư viện của bạn vào dự án của bạn, không tạo vùng làm việc nhưng thả nó vào cây dự án của bạn. Nó sẽ không hoạt động với dự án libturbojpeg vì nó có 2 kiến trúc riêng biệt. Sau đó tạo một phụ thuộc trong giai đoạn xây dựng dự án chính của bạn và chèn tệp * .a vào bước liên kết. Như thế này: http://media.dunkelstern.de/images/Xcode_library_project.png – Dunkelstern