Nhiều người chơi thời gian thực Android qua LAN [đã đóng]


9

Tôi đã phát triển một số trò chơi cho nền tảng Android và hiện đang lên kế hoạch tạo trò chơi nhiều người chơi đầu tiên của mình. Những gì tôi có trong đầu về cơ bản chỉ là một phù thủy trò chơi 2 người bạn có thể chơi với 2 điện thoại qua kết nối / WiFi cục bộ.

Cả hai điện thoại cần có khả năng truyền 3 giá trị nguyên cho điện thoại kia trong thời gian thực. Cho đến nay tôi đã cân nhắc sử dụng Socket, nhưng trước khi tìm hiểu sâu về nó, tôi muốn hỏi liệu có cách nào tốt hơn không?

Cảm ơn!


3
Một cách tiếp cận tốt hơn ổ cắm ... không chắc chắn. Tuy nhiên, bạn không cần sử dụng ổ cắm thô vì các thư viện đã có sẵn làm điều đó cho bạn. Tôi giả sử bạn đang phát triển trên nền tảng Android với Java (bạn không được gắn thẻ là java) để bạn có thể xem Kryonet.
nathan

Đúng vậy, tôi đang phát triển với java. Tôi sẽ xem xét Kryonet. Cảm ơn các bình luận.
Heigo

Nếu bạn chỉ chuyển một vài giá trị, bạn có thể muốn xem xét Bluetooth. Dưới đây là một vài tài liệu tham khảo tốt: developer.android.com/guide/topics/connectivity/bluetooth.htmlstackoverflow.com/questions/5619850/ trên
amb

Tôi cũng có thể cân nhắc sử dụng bluetooth trong sự phát triển hơn nữa, nhưng hiện tại, tôi thấy mọi người đã quen thuộc hơn với WiFi.
Heigo

1
Tôi hiện cũng đang bắt đầu tạo một trò chơi nhiều người chơi và tôi đang nghĩ về việc có một phụ trợ dịch vụ nghỉ ngơi (để đăng ký người chơi, mai mối, v.v.) và một máy chủ trò chơi dựa trên ổ cắm tcp. Khi trận đấu được thực hiện và trò chơi thực sự bắt đầu, dịch vụ còn lại sẽ gửi một thông báo về ổ cắm đến máy chủ và phiên bản thực tế của trò chơi sẽ được tạo (để làm cho mọi thứ có thể mở rộng). Các máy khách nhận ip cho máy chủ và tạo kết nối bằng cách sử dụng bảo mật được cung cấp bởi dịch vụ còn lại. Máy chủ trò chơi xác nhận và làm phần còn lại.
Thomas

Câu trả lời:


-2

Một tùy chọn bạn có thể xem là Socket.IO .

Dường như có rất nhiều cuộc thảo luận về Socket.IO tại Stack Overflow, bao gồm:

Than ôi, tôi không thể tìm ra cách để một thiết bị Android giao tiếp trực tiếp với một thiết bị Android khác thông qua Socket.IO hoặc thậm chí một bước gián tiếp với cả hai nói chuyện với một điểm truy cập WiFi giữa chúng. (Tôi vẫn không biết liệu đó có phải là lỗi trong mã của mình không, một loại tường lửa trong mã của người khác hoặc giới hạn vốn có của Socket.IO). Tôi đã nhận được một bản demo nhỏ làm việc với một thiết bị Android gửi tin nhắn đến máy chủ web, nó đã chuyển tiếp tin nhắn đến thiết bị Android khác.


Là một plugin cho máy chủ Node.js, Socket.IO có thể liên quan đến câu hỏi về chế độ nhiều người chơi trong thời gian thực trong trò chơi trình duyệt. Tuy nhiên, trong bối cảnh hiện tại của javaAndroid , việc đề cập đến nó chỉ phục vụ cho việc đánh lừa.
Eric

Tôi có một bản demo nhỏ với một ứng dụng Android tùy chỉnh bằng cách sử dụng Socket.IO để (gián tiếp) giao tiếp với một ứng dụng tùy chỉnh khác trên một thiết bị Android khác, thông qua máy chủ Node.js. Nó ít nhiều "hoạt động", nhưng nếu bạn biết về một cách tiếp cận tốt hơn, đặc biệt là một cách tiếp cận trực tiếp hơn, tôi (và tôi chắc chắn rằng poster gốc) muốn biết về nó - vui lòng cho chúng tôi biết.
David Cary

-2

Bạn có nói cả hai thiết bị ở trong cùng một phòng không?

Mỗi thiết bị Android có loa và micrô. Về nguyên tắc, một ứng dụng có thể gửi một loạt âm thanh ra khỏi loa và sau đó ứng dụng kia sẽ nghe âm báo và giải mã chúng trở lại chuỗi tin nhắn. Bạn có thể (a) sử dụng toàn bộ phổ âm thanh để gửi dữ liệu, giống như các bộ ghép âm thanh của thập niên 60 và 70, hoặc (b) sử dụng băng thông hẹp hơn nhiều từ 15 KHz đến mức cao nhất mà thiết bị của bạn hỗ trợ (có thể là 24 KHz) - - một đường ống dữ liệu chậm hơn nhiều, nhưng hầu hết mọi người không thể nghe thấy các tần số đó nữa - đó là siêu âm đối với họ.

Các nhà điều hành đài phát thanh Ham đã phát triển nhiều kỹ thuật thông minh để kéo các tín hiệu cực kỳ mờ ra khỏi nhiều nhiễu.

" Giao tiếp qua Audio Jack cho điện thoại Android"

Đọc âm thanh trên Android: a b c

"Phần mềm Zoosh của Narrate tận dụng loa và micrô của điện thoại thông minh để cho phép truyền dữ liệu giống nhau giữa các thiết bị mà NFC ngày nay cung cấp, nhưng với tần số siêu âm mà con người không nghe thấy được." - Eweek , Slashdot .

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.