2016-12-13 28 views
6

Tôi hiện đang cố gắng xây dựng một ứng dụng iOS từ Unity nhưng tiếp tục chạy vào những 4 lỗi:Unity Xcode Dự án PlayerSettings_GetBundleIdentifier

Undefined symbols for architecture arm64: 
"_utilityBundleIdentifier", referenced from: 
     _NativeBinding_utilityBundleIdentifier_m3566456099 in Bulk_Assembly-CSharp-firstpass_4.o 
     _NativeBinding_GetBundleIdentifier_m2869188113 in Bulk_Assembly-CSharp-firstpass_4.o 
     _PlayerSettings_GetBundleIdentifier_m1189967083 in Bulk_Assembly-CSharp-firstpass_4.o 
    (maybe you meant: _NativeBinding_utilityBundleIdentifier_m3566456099) 
    "_utilityBundleVersion", referenced from: 
     _NativeBinding_utilityBundleVersion_m3211654534 in Bulk_Assembly-CSharp-firstpass_4.o 
     _NativeBinding_GetBundleVersion_m3758909934 in Bulk_Assembly-CSharp-firstpass_4.o 
     _PlayerSettings_GetBundleVersion_m1248687572 in Bulk_Assembly-CSharp-firstpass_4.o 
    (maybe you meant: _NativeBinding_utilityBundleVersion_m3211654534) 
    "_debugProLogMessage", referenced from: 
     _NativeBinding_debugProLogMessage_m135661794 in Bulk_Assembly-CSharp-firstpass_2.o 
    (maybe you meant: _NativeBinding_debugProLogMessage_m135661794) 
ld: symbol(s) not found for architecture arm64 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

Thoát mã 1 - biểu tượng Không xác định cho kiến ​​trúc arm64 thường trỏ đến một khuôn khổ mà hasn' đã được đưa vào nhưng các tham chiếu này trỏ tới PlayerSettings_GetBundleIdentifier, nó có thể cho biết một thuộc tính Unity.

Ngoài ra khi gói nhận dạng, phiên bản & xây dựng được thiết lập trong XCode:

Xcode Bundle Identfier

Đây là những lá cờ mối liên kết khác Other Linker Flags

lỗi này có nghĩa gì? Tôi đã quên bao gồm một khuôn khổ, và cái nào hoặc có cái gì đó sai trong các thiết lập Unity hoặc XCode?

Trả lời

1

Sự cố xảy ra do 3 phương pháp được tham chiếu trong VoxelBusters không tồn tại trong bất kỳ tệp .h & .m nào được cung cấp kèm plugin. Sử dụng __Internal DLLImport bạn liên kết các phương thức với Mã mục tiêu-C.

[DllImport("__Internal")] 
private static extern string utilityBundleVersion(); 
[DllImport("__Internal")] 
private static extern string utilityBundleIdentifier(); 
[DllImport("__Internal")] 
public static extern void debugProLogMessage (string _message, eConsoleLogType _type, string _stackTrace); 

Không tồn tại trong Dự án XCode. Khi tôi thêm các phương thức này vào AppDelegate.h & AppDelegate.m từ Unity, các lỗi đã biến mất và bây giờ tôi có thể tiếp tục làm việc.

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