Cố gắng thêm đa chạm vào một dự án java nền tảng chéo hiện có. Tôi đã xem xét theo 2 cách. Có một số cách khác nhưng chúng dường như không phải là nền tảng chéo hoặc cần phần mềm đặc biệt.Ứng dụng java đa nền tảng đa chạm (Windows, Mac và Linux (Ubuntu) (có thể là Android))
- JavaFx - Thao tác cử chỉ/chạm trên windows và osx nhưng không hoạt động trên Ubuntu 16.04.
- MT4J - Có vẻ sẽ bị tạm ngừng và/hoặc không được hỗ trợ.
Kết luận của tôi ở trên có thể sai và sẵn sàng thử lại cho phản hồi tốt.
Có cách nào để đạt được ứng dụng java đa cảm ứng đa nền tảng không? Dường như tôi có thể cần phải viết một số mã nguồn gốc và thêm nó thông qua JNI mà có vẻ như rất nhiều công việc. Bất kỳ ý tưởng nào về dòng suy nghĩ này ?. Thức ăn trở lại được đánh giá cao, Cảm ơn.
Tiếp tục 1.0:
Tôi đã giữ điều tra sử dụng JavaFX trên Linux chủ yếu là vì Hạn chế duy nhất ngay bây giờ cho việc sử dụng JavaFX là hỗ trợ cảm ứng đa Linux. Những gì tôi đã phát hiện ra là JavaFx multitouch hoạt động trên các bản phân phối Linux dành cho các hệ thống nhúng (ví dụ: Raspberry Pi, có lẽ là thành thật nhất). Những gì tôi có thể thu thập từ này là nếu OpenJFX thể được biên dịch cho hệ thống nhúng sau đó phiên bản nhúng của OpenJFX sử dụng các trình điều khiển thiết bị trực tiếp để có được đầu vào (/ dev/input /) thay vì X11/GTK. Kể từ khi Linux dists cho máy tính để bàn sử dụng X11/GTK cho có đầu vào vào môi trường máy tính để bàn JavaFx là không thể có được những sự kiện này do thiếu sự hỗ trợ.
Tôi không muốn sử dụng một liên kết nhưng ở đây nó là
https://wiki.openjdk.java.net/display/OpenJFX/Building+the+OpenJFX+embedded+stack+for+Linux+desktop
Liên kết ở trên, dường như tôi tại-nhất, để được về soạn thảo một phiên bản của OpenJFX cho các hệ thống x86 (nên làm việc x64) trong đó sử dụng cách hệ thống nhúng để nhận thiết bị đầu vào. Tôi có thể biên dịch phiên bản này nhưng khi tôi chạy nó xuất hiện để sụp đổ máy tính để bàn và đôi khi nó rời khỏi ứng dụng Java lên. Khi ứng dụng Java còn lại chạy các sự kiện cảm ứng hoạt động nhưng kết quả cuối cùng này không thể chấp nhận được vì nó không thể đoán trước được và có vẻ như làm hỏng trình quản lý máy tính để bàn (Yêu cầu khởi động lại máy tính để bàn sau này).
Tiếp tục 1.1:
Tôi nhìn vào sử dụng TUIO nhưng không ai trong số các chương trình mẫu làm việc. Họ nói rằng bạn cần một thiết bị kích hoạt TUIO mà có thể là một tiêu chuẩn đặc biệt/protocal thiết bị của tôi không sử dụng. Khá nhiều chỉ cần tải về bản demo TUIO và chạy nó trên một màn hình cảm ứng mà không có may mắn.
Tôi cũng nghĩ về gắn xev để cửa sổ ứng dụng java của tôi và streaming các kết quả vào một tập tin để sau được đọc bởi các ứng dụng java và phân tích thành các sự kiện java. Điều này có vẻ khá hacky và không chắc chắn nếu nó thậm chí sẽ làm việc. Nếu ai đó có thể đưa ra khả năng làm việc này tôi có thể thử nó. Nhưng vào thời điểm này nó có vẻ giống như cách để làm việc nhiều.
Tiếp tục 1.2:
Tìm thấy https://bugs.openjdk.java.net/browse/JDK-8090954 này và nghĩ rằng nó là thú vị.
Đăng giải pháp dưới đây.
Bạn có thể đưa ra ví dụ về cách người ta có thể sử dụng tính năng này để thực hiện dự án java từ trước để bật đa chạm trên windows, mac và linux không? Hoặc giải thích những gì sẽ được yêu cầu để làm như vậy. – mpyne
Câu hỏi đặc biệt về java, nói rằng có những nền tảng khác, không dựa trên java, không hữu ích. – caiocpricci2
Ngay cả một chút trợ giúp về cách chúng tôi tích hợp điều này với ứng dụng java trên máy tính để bàn sẽ được đánh giá cao và nhận được tiền thưởng của tôi. Liên kết chỉ là quá ngắn trên thông tin để chúng tôi bắt đầu. – vextorspace