2010-04-06 29 views
5

Tôi đang cố gắng tải tại các tập lệnh Lua thời gian chạy trên iPhone. Có khả năng thực hiện điều đó không?Lua trên iPhone

Tôi làm cách nào để bắt đầu với Lua? Tôi không thể tìm thấy một cái gì đó. Điều duy nhất tôi có thể tìm thấy là điều này nên có thể, nhưng tôi tự hỏi làm thế nào.

+0

Bạn có chắc chắn điều đó có thể không? IIRC Apple cấm sử dụng ngôn ngữ thông dịch trên iPhone. –

+1

@Timo Geusch: Không đúng sự thật. (Như đã được thảo luận nhiều lần ở đây trên SO.) Điều duy nhất bị cấm là tải mã từ các nguồn không đáng tin cậy như mạng hoặc người dùng. Nếu mã của bạn xuất phát từ một nguồn * đáng tin cậy (về cơ bản có nghĩa là App Store), Apple không quan tâm đến cách bạn chạy nó: giải thích nó, biên dịch nó, heck, gửi nó sang Trung Quốc để được đánh giá bằng tay bởi nô lệ trẻ em . Có rất nhiều mã được giải thích trong App Store, ví dụ: Ứng dụng Wikipedia được viết bằng Ruby. –

+3

Nếu bạn không thể tìm thấy tài liệu Lua thì có thể bạn không ở vị trí để viết nhiều phần mềm. –

Trả lời

4

Lua docs rất tốt, cũng đọc PIL (Lập trình ở Lua) ấn bản đầu tiên có sẵn trực tuyến, ấn bản thứ hai không tốn kém trên bản in ra giấy.

Lua được thiết kế đặc biệt để sử dụng làm ngôn ngữ nhúng, chỉ cần liên kết với bất kỳ dự án C (hoặc Obj-C hoặc C++) nào và sử dụng C API để tải tập lệnh và chạy chúng.

Lưu ý rằng Apple cấm tạo các nền tảng tập lệnh; nhưng AFAICT, điều đó chỉ có nghĩa là người dùng không thể thêm tập lệnh Lua để nâng cao ứng dụng của bạn. Bạn được tự do sử dụng Lua nhúng để làm cho Ứng dụng của bạn linh hoạt hơn và dễ viết hơn.

+1

Rõ ràng các hạn chế đã bị xóa. Xem http://www.apple.com/pr/library/2010/09/09statement.html – lhf

+0

Như tôi đã đọc, các hạn chế đã xóa chỉ là những hạn chế đã được thêm gần đây: những hạn chế đã giới hạn ngôn ngữ và công cụ. bây giờ các quy tắc được gần gũi hơn với bản gốc: sử dụng bất kỳ công cụ/ngôn ngữ nào bạn muốn, nhưng tất cả mã phải được nhúng trong ứng dụng – Javier

7

Khám phá Corona SDK.

+0

Đó là một chút thất vọng rằng các trang web sáng bóng thậm chí không đề cập đến từ Lua. Bất cứ ai có thể bình luận nếu điều này là SDK trị giá $ 99? –

+2

@Norman: Hiện tại. – lhf

+0

Đây là phương pháp nhanh nhất để tạo ra các ứng dụng/trò chơi chất lượng cao, thời gian. –

3

tôi đã biên soạn Lua vào một ứng dụng iPhone. Nó khá thẳng về phía trước nếu bạn đã sử dụng Lua trong các ngữ cảnh khác. Các chỉ gotcha thực sự là iPhone không tiếp xúc với hệ thống tập tin của nó một cách truyền thống vì vậy tôi đã kết thúc bằng cách sử dụng các gói tài nguyên để lưu trữ các kịch bản và đã phải viết lại các lua_dofile chức năng để chấp nhận các tập tin từ bó.

Tôi khuyên bạn nên biên dịch Lua thành ứng dụng không phải iPhone trước khi thử sử dụng ứng dụng trên iPhone. Một khi bạn hiểu c api shoehorning nó vào khung di động ca cao không phải là khó khăn.