2015-08-13 20 views
5

Tôi đang làm việc trong bảng phân cảnh của mình trong Xcode 6.3.2 trên một dự án Objective-C. Đột ngột khi tôi cố gắng xây dựng, tôi gặp lỗi:Xcode 6: Không tìm thấy tập tin 'Answers.h' sau khi cập nhật Fabric Crashlytics

/.../Developer/ProjectName/Crashlytics.framework/Headers/Crashlytics.h:14:9: Không tìm thấy 'answer.h'

Tôi đã cài đặt Crashlytics và hoạt động trong ứng dụng của mình trong vài tuần. Tôi có nó chạy qua plugin Vải. Tôi đã chuyển qua ứng dụng Vải và nhận thấy nó đã cập nhật Crashlytics gần đây.

Trong Xcode nếu tôi đi "Kiểm soát nguồn" -> "Cam kết ..." để xem các thay đổi của tôi, nó chỉ hiển thị những thay đổi tôi đã thực hiện - không liên quan đến Crashlytics.

Có ai khác nhìn thấy điều này không? Bất cứ ai có đề xuất về cách hiệu quả nhất để phục hồi và trở lại làm việc?

Tôi chỉ hơi thất vọng khi không có quyền kiểm soát khi cập nhật phụ thuộc.

UPDATE:

Để có được dự án để tình trạng xây dựng thể để tôi có thể tiếp tục làm việc, tôi tạm thời loại bỏ các dòng sau từ appdelegate tôi:

  • #import <Crashlytics/Crashlytics.h>
  • [Fabric with:@[CrashlyticsKit]];
+0

Alex từ Vải ở đây. Điều này nghe có vẻ như một cái gì đó kỳ lạ đã xảy ra trong quá trình nâng cấp. Nếu bạn nhấp chuột phải vào khung Crashlytics và Fabric trong dự án của mình, hãy chọn "Hiển thị trong Trình tìm kiếm" và mở info.plist, giá trị phiên bản trong "Chuỗi phiên bản bó, ngắn" là gì? – Alexizamerican

+0

Cảm ơn @Alexizamerican vì đã liên hệ. Tôi đã kết thúc nói chuyện để hỗ trợ thông qua liên kết "Hỗ trợ liên hệ" tại http://support.crashlytics.com/. Tôi đã hoàn toàn loại bỏ Crashlytics khỏi dự án và cài đặt lại - điều này giải quyết được vấn đề. – davew

Trả lời

7

Tôi đã kết thúc với việc hỗ trợ thông qua "Liên hệ suppo rt "liên kết tại http://support.crashlytics.com/.

Họ đã cung cấp cho tôi một số bước để xóa khung Crashlytics cũ khỏi dự án của tôi và sau đó cài đặt lại thủ công. Không rõ ràng với tôi rằng anh ta dự định loại bỏ framework thông qua Finder thay vì Xcode, vì vậy nỗ lực của tôi để làm theo các hướng dẫn dẫn đến một số tác động phụ (ví dụ: khung kết thúc trong thư mục sai, tôi có một thư mục không tên trên máy tính để bàn của tôi từ lệnh ditto mà anh ấy đã cho tôi chạy ... điều này khiến Time Machine ngừng hoạt động một cách bí ẩn cho đến khi tôi xóa thư mục).

Tôi đã loại bỏ hoàn toàn Fabric và Crashlytics khỏi dự án, sau đó tôi đã sử dụng ứng dụng Fabric OSX để cài đặt Crashlytics trở lại dự án. Từ đây dự án đã hoạt động trở lại.

Để loại bỏ Crashlytics và vải từ dự án này, tôi đã làm như sau:

  1. xóa Crashlytics.framework và Fabric.framework từ dự án của tôi qua Xcode
  2. Deleted kịch bản chạy trong thuộc Project -> Build Các giai đoạn. Điều này có thể là tùy chọn. Điều quan trọng là phải xác minh rằng id duy nhất trong tập lệnh chạy khớp với những gì Fabric cung cấp khi cài đặt lại.
  3. Đã xóa 3 dòng sau trong AppDelegate. Điều này có thể là tùy chọn. Nó sẽ cần phải được thay thế khi cài đặt lại.

    #import <Fabric/Fabric.h> 
    #import <Crashlytics/Crashlytics.h> 
    
    [Fabric with:@[CrashlyticsKit]]; 
    
+0

Đối với bất cứ ai khác đọc sách này - tôi nghĩ mẹo thực sự là # 2 hoặC# 3 ở trên, có thể là # 3. Tôi đã bị mắc kẹt trong giai đoạn xây dựng tiếp tục và sự tồn tại của công cụ # 2 hoặC# 3 trong các tệp dự án nhầm lẫn với ứng dụng Vải. –

2

Đối với tôi, tôi đã làm theo vải.bước ứng dụng của mà nói với tôi để bao gồm #import <Answers/Answers.h> nhưng tất cả tôi cần là:

#import <Crashlytics/Crashlytics.h> 

... 

[Answers logCustomEventWithName:@"My First Custom Event" 
        customAttributes:@{}]; 
1

Nếu bạn đang sử dụng Crashlytics + trả lời thử điều này:

#import <Crashlytics/Crashlytics.h> //Obj-C 
import Crashlytics     //Swift 
Các vấn đề liên quan