Xem mẫu

  1. KỈ YẾU HỘI NGHỊ SINH VIÊN NGHIÊN CỨU KHOA HỌC NĂM HỌC 2013-2014 XÂY DỰNG ỨNG DỤNG HỖ TRỢ TRÌNH CHIẾU TỪ XA TRÊN NỀN TẢNG ANDROID Nguyễn Đồng Thắng, Khoa Công nghệ Thông tin GVHD: ThS. Nguyễn Thị Thanh Huyền Tóm tắt: Ngày nay, thuyết trình đóng một vai trò rất quan trọng trong rất nhiều lĩnh vực khác nhau. Cùng với đó thì đã có rất nhiều những công cụ hiện đại hỗ trợ cho việc thuyết trình nhằm nâng cao kết quả của bài thuyết trình. Như bút trình chiếu hay các ứng dụng di động giúp người dùng điều khiển bài trình chiếu từ xa nhưng những công cụ này đều còn có những hạn chế về phạm vi kết nối cũng như giá thành còn khá cao. Báo cáo tìm hiểu và xây dựng ứng dụng Remote Slide - Hỗ trợ người dùng trình bày bài thuyết trình. Nhằm nâng cao hiệu quả và chất lượng của bài thuyết trình. Từ khóa: Lập trình Android, hỗ trợ trình chiếu, PowerPoint, Lập trình Client/Server, smartphone. I. MỞ ĐẦU Ngày nay, trong công việc đôi lúc đòi hỏi chúng ta cần phải có những bài trình bày, bài thuyết trình, bài báo cáo về kết quả công việc hay nghiên cứu của mình. Ví dụ nhƣ giáo viên muốn thuyết trình về bài giảng của mình trƣớc học sinh, học sinh muốn trình bày kết quả học tập của mình trƣớc lớp hay nhân viên trong công ti muốn báo cáo kết quả công việc của mình với cấp trên,… Đã có rất nhiều công cụ hỗ trợ cho việc thuyết trình từ giai đoạn chuẩn bị cho đến khi bài thuyết trình đƣợc trình bày. Tiêu biểu trong số đó phải kể đến phần mềm Microsoft Office PowerPoint nằm trong bộ phần mềm Microsoft Office của Microsoft. Đây là phần mềm cung cấp các ứng dụng liên quan tới công việc văn phòng thƣờng ngày nhƣ soạn thảo văn bản, xử lí bảng biểu, thiết kế bài giảng điện tử, thuyết trình, quảng cáo, thậm chí là làm phim, trò chơi hay trình diễn ảnh. Bên cạnh đó, với sự hỗ trợ của máy Projector (máy chiếu) kết nối với máy tính, ngƣời dùng có thể khai thác đƣợc nội dung muốn chuyển tải và làm cho nó sinh động và trực quan hơn với những hình ảnh, video minh họa cho nội dung có trên slide trình chiếu. Nhƣng ngoài những lợi ích không thể phủ nhận mà những công cụ này mang lại thì vẫn còn những hạn chế nhất định. - Trong bài thuyết trình, những nội dung đƣợc trình bày đều đƣợc minh họa vởi những hình ảnh cụ thể mà đôi khi thiếu đi những hoạt động trực quan của ngƣời thuyết trình. Điều này sẽ làm cho ngƣời nghe bị phụ thuộc vào bài thuyết trình dẫn đến lƣời suy nghĩ, lƣời tƣởng tƣợng, khả năng tƣ duy trừu tƣợng bị hạn chế. - Khi trình bày bài thuyết trình, ngƣời thuyết trình thƣờng trình bày nội dung của bài giảng trƣớc, sau đó mới chiếu phần nội dung đó lên màn hình hoặc theo thứ tự ngƣợc lại. Nhƣng trong nhiều trƣờng hợp hai công việc này cần phải đi đôi với nhau nhƣ vậy mới có tác dụng nhấn mạnh lên sự tiếp thu của ngƣời nghe. Việc thực hiện không đồng bộ giữa trình chiếu và trình bày gây gián đoạn dòng tƣ duy của ngƣời nghe và làm hao phí quỷ thời gian. 163
  2. KỈ YẾU HỘI NGHỊ SINH VIÊN NGHIÊN CỨU KHOA HỌC NĂM HỌC 2013-2014 - Khi chuẩn bị bài thuyết trình ngƣời dùng là ngƣời đã nắm rõ nội dung của slide bài giảng vì đã xem đi xem lại nhiều lần và trực tiếp biên soạn. Nên có thể nảy sinh tâm lí chủ quan, cảm nghĩ ngƣời nghe sẽ tiếp thu nội dung và hình ảnh dễ dàng, do đó chuyển từ slide này sang slide khác quá nhanh hoặc quá chậm sẽ làm học sinh không theo dõi kịp bài thuyết trình. Mà không để ý rằng ngƣời nghe chỉ mới đƣợc xem lần đầu, do đó cần có thời gian để học sinh tiếp thu những nội dung của bài thuyết trình. Từ những điểm còn hạn chế kể trên, cần phải có những công cụ, phƣơng pháp hỗ trợ thuyết trình mới để giúp cho ngƣời trình bày vừa có thể duy trì đƣợc tính tƣơng tác với ngƣời nghe trong khi phát huy tối đa những lợi ích mà những công cụ đó mang lại. Báo cáo đề xuất việc phát triển công cụ mới. Ứng dụng Remote Slide hỗ trợ ngƣời dùng trình bày bài thuyết trình. Nhằm nâng cao hiệu quả và chất lƣợng của bài thuyết trình. I. NỘI DUNG 1. Mô tả bài toán Ứng dụng Remote Slide hoạt động theo mô hình Client/Server. Trong đó, Server là phần mềm đƣợc cài đặt trên máy tính sử dụng hệ điều hành Windows có nhiệm vụ tiếp nhận những thông tin điều khiển gửi từ Client - ứng dụng cài đặt trên điện thoại Android. Hình 1. Mô tả hoạt động của ứng dụng Remote Slide Ngƣời dùng có thể điều chuyển Slide, sử dụng con trỏ, các chức năng trình chiếu,… ngay trên điện thoại. Những hành động này sẽ đƣợc mã hóa thành những tập tin điều khiển và gửi đến Server. Server sẽ tiếp nhận và xử lí những gói tin tƣơng ứng với những hành động đƣợc yêu cầu từ phía Client. 2. Phân tích bài toán Ứng dụng Remote Slide có hai thành phần chính đó là: (1) Server đƣợc cài đặt trên máy tính; (2) Client cài đặt trên điện thoại di động thông minh sử dụng hệ điều hành Android. Để điều khiển bài trình chiếu, Ứng dụng Remote Slide cần phải kết nối Server với Client đầu tiên. Sau khi kết nối, ứng dụng sẽ có các chức năng: - Chức năng mở bài trình chiếu: Để thực hiện bài trình chiếu, trƣớc hết cần phải mở bài trình chiếu trên máy tính. Chức năng cần phải hỗ trợ khả năng tìm và mở bài trình chiếu 164
  3. KỈ YẾU HỘI NGHỊ SINH VIÊN NGHIÊN CỨU KHOA HỌC NĂM HỌC 2013-2014 lƣu trữ trên máy tính với định dạng phần mở rộng là .ppt (Microsoft Office PowerPoint 2003) hoặc .pptx (Microsoft Office PowerPoint 2007 - 2013). - Chức năng điều chuyển slide: Là chức năng cơ bản của ứng dụng. Chức năng này giúp ngƣời dùng chuyển đến slide trƣớc hoặc slide sau trong khi trình chiếu. - Chức năng sử dụng con trỏ: Trong khi thuyết trình, đôi khi ngƣời dùng sẽ cần trỏ đến một vị trí cụ thể nào đó trên slide giúp ngƣời xem có thể nắm bắt đƣợc nội dung cụ thể và chi tiết hơn. Chức năng này giúp ngƣời dùng thực hiện đƣợc chức năng trên. Ngoài ra, ngƣời dùng cũng có thể thực hiện thao tác Click vào một đối tƣợng trên slide nhƣ video để phát video hay một đƣờng liên kết có trong slide. - Các chức năng trình chiếu: Đây là chức năng bắt đầu hay thoát khỏi chế độ trình chiếu của bài thuyết trình. Tƣơng tự nhƣ khi ngƣời dùng nhấn phím F5 (Bắt đầu chế độ trình chiếu) và ESC (Thoát khỏi chế độ trình chiếu) trên bàn phím máy tính. - Chức năng lựa chọn ngôn ngữ: Để mở rộng đối tƣợng ngƣời dùng, ứng dụng Remote Slide cần hỗ trợ ở các ngôn ngữ khác nhau. Chức năng này giúp ngƣời dùng lựa chọn ngôn ngữ cho ứng dụng. Ngôn ngữ đƣợc chọn sẽ trở thành ngôn ngữ mặc định của ứng dụng khi sử dụng sau này. Để thay đổi, ngƣời dùng chỉ cần sử dụng chức năng này và chọn lại ngôn ngữ mong muốn. 3. Thiết kế và cài đặt ứng dụng Ứng dụng Remote Slide có hai thành phần chính là Client và Server. Client và Server giao tiếp với nhau thông qua giao thức UDP (User Datagram Protocol) gửi và nhận dữ liệu theo dạng gói trong mạng WLAN (Wireless Local Area Network) – mạng cục bộ không dây. Hình 2. Biểu đồ thành phần hệ thống Sau khi nhận đƣợc những gói tin điều khiển từ Client, Server sẽ phân tích và thực hiện công việc đƣợc yêu cầu. 3.1. Thành phần Server 3.1.1. Chức năng mở bài trình chiếu Ứng dụng hỗ trợ ngƣời dùng chức năng tìm và mở file Microsoft Office PowerPoint (*.ppt,*.pptx) bằng cách duyệt các thƣ mục trên máy tính. Sau khi tìm và chọn đƣợc file, bài trình chiếu sẽ đƣợc mở lên ở chế độ chỉnh sửa. Lúc này ngƣời dùng có thể điều khiển bài trình chiều từ Client. 165
  4. KỈ YẾU HỘI NGHỊ SINH VIÊN NGHIÊN CỨU KHOA HỌC NĂM HỌC 2013-2014 Hình 3. Tìm và mở bài trình chiếu 3.1.2. Chức năng thiết lập kết nối với Client Mô hình Client/Server là một kiểu ứng dụng truyền thông trên mạng Internet. Trong TCP/IP (Transmission Control Protocol / Internet Protocol) cung cấp hai giao thức giao vận chính UDP (User Datagram Protocol) và TCP (Transmission Control Protocol) cho tầng ứng dụng. Cụ thể, đối với ứng dụng Remote Slide sử dụng giao thức UDP vì ứng dụng cần sự ƣu tiên về tốc độ truyền tín hiệu điều khiển giữa Client và Server. Đảm bảo sự đồng bộ giữa các thao tác trên Client và hành động trên Server. 3.1.3. Cơ chế thiết lập kết nối qua UDP Hình 4. Thiết lập kết nối Client/Server 166
  5. KỈ YẾU HỘI NGHỊ SINH VIÊN NGHIÊN CỨU KHOA HỌC NĂM HỌC 2013-2014 - Phía Server: Ứng dụng phía Server sẽ tạo ra một Socket và đăng kí với Server một cổng ứng dụng và chờ đợi yêu cầu kết nối từ phía Client qua cổng này. - Phía Client: Biết địa chỉ của máy mà Server đang chạy và cổng mà Server đang chờ nghe yêu cầu. Và nó cũng tạo một Socket để giao tiếp với Server chứa địa chỉ máy Client và cổng của ứng dụng trên máy Client đồng thời client sẽ cung cấp cho Socket của nó một địa chỉ và cổng của Server mà nó cần kết nối. Toàn bộ dữ liệu mà Client muốn gửi đến Server đƣợc qua Socket của Client, tại Socket này nó sẽ chuyển thẳng gói tin mà Client muốn gửi tới Server dƣới dạng một datagram có chứa địa chỉ máy Server và cổng mà Server đang lắng nghe yêu cầu. Vậy là chúng không cần có một kết nối và Server không cần tạo ra một Socket khác để kết nối với Client thay vào đó Server dùng ngay cổng ban đầu để trao đổi dữ liệu. Cụ thể, khi tạo ra Socket trên Server cần đến địa chỉ IP máy tính đang chạy Server và một địa chỉ cổng để lắng nghe yêu cầu kết nối từ cổng này. Do máy tính và điện thoại đã kết nối vào mạng WLAN, nên địa chỉ IP máy tính là cố định. Nhƣng địa chỉ cổng lắng nghe yêu cầu thì ngƣời dùng có thể thay đổi trong khoảng từ 0 – 9999. Trƣớc khi tạo ra Socket, hệ thống sẽ kiểm tra địa chỉ cổng này nếu hợp lệ thì tạo ra Socket nếu không thì đƣa ra thông báo lỗi. 3.1.4. Chức năng tiếp nhận và xử lí gói tin Sau khi kết nối với Client, Server sẽ lắng nghe những gói tin đƣợc gửi đến từ Client. Tại Client, mỗi hành động của ngƣời dùng sẽ tạo ra một lệnh điều khiển tƣơng ứng với hành động đó. Đây là một chuỗi kí tự kiểu String bao gồm những từ (keywork) mang ý nghĩa của lệnh điều khiển và những các keywork điều khiển này đƣợc phân tách nhau bởi kí tự “!!”. Các kí tự “!!” có nhiệm vụ phân tách các keyword sao cho sau khi giải mã thì Server sẽ biết chính xác cần phải thực hiện công việc gì. Ví dụ: “MOUSE!!RIGHT”  Yêu cầu Server thực hiện hành động Click chuột và cụ thể là click chuột bên phải. “MOUSE!!LEFT”  Yêu cầu Server thực hiện hành động Click chuột và cụ thể là click chuột bên trái. Trƣớc khi gói tin đƣợc gửi đi, chúng đƣợc mã hóa về kiểu dữ liệu Byte. Nên khi nhận đƣợc gói tin ở Server, việc đầu tiên cần làm đó là chuyển gói tin trở lại kiểu String để có thể phân tích chúng. Kết quả nhận đƣợc sau khi chuyển đổi là một chuỗi kí tự có kiểu String. Đây chính là lệnh điều khiển nhận đƣợc Client. Tiếp theo, chƣơng trình sẽ đọc lệnh và yêu cầu Server thực hiện công việc tƣơng ứng với lệnh đọc đƣợc. 3.2. Thành phần Client 3.2.1. Chức năng điều chuyển slide Đây là chức năng cơ bản nhất của ứng dụng, ngƣời dùng có thể chuyển đến slide trƣớc hoặc slide sau của bài thuyết trình. Sau khi kết nối với Server, trên Client sẽ hiện ra màn hình chính điều khiển bài trình chiếu nhƣ sau. 167
  6. KỈ YẾU HỘI NGHỊ SINH VIÊN NGHIÊN CỨU KHOA HỌC NĂM HỌC 2013-2014 Hình 5. Chức năng điều chuyển slide Để điều chuyển slide, ngƣời dùng có thể bấm chọn các button hình mũi tên tƣơng ứng. Ngoài ra, cũng có thể swipe màn hình (giữ và vuốt trên màn hình) sang trái để chuyển đến slide sau hoặc sang phải để chuyển đến slide trƣớc. 3.2.2. Chức năng sử dụng con trỏ Điều khiển con trỏ là chức năng quan trọng trong ứng dụng. Để điều khiển vị trí con trỏ đến một vị trí nào đó trên màn hình, ngƣời dùng chỉ cần chạm và di chuyển đến vị trí mong muốn trên màn hình điện thoại tƣơng tự nhƣ việc sử dụng touchpad trên máy tính xách tay. Nhƣng việc chạm và di chuyển trên màn hình có thể bị nhầm lẫn với chức năng swipe để điều chuyển slide. Để giải quyết vấn đề này, ứng dụng sẽ cần đến sự hỗ trợ của chức năng long press. Đây là hàm đƣợc xây dựng để phát hiện khi có sự kiện chạm và giữ ở màn hình tại 1 vị trí và trong một khoảng thời gian nhất định. Chức năng long press hoạt động nhƣ sau: Mặc định sau khi kết nối với Server, chức năng sẽ mặc định ở chế độ con trỏ, khi ngƣời dùng muốn điều chuyển slide bằng cách swipe màn hình thì chỉ vần chạm và giữ ở màn hình trong một khoảng thời gian nhất định. Trên màn hình sẽ hiện ra một hình ảnh thông báo đã chuyển sang chế độ swipe. Khi muốn sử dụng lại chức năng con trỏ, ngƣời dùng tiếp tục chạm và giữ trên màn hình nhƣ trƣớc, màn hình cũng sẽ hiện hình ảnh thông báo đã chuyển về chế độ con trỏ thành công. 3.2.3. Các chức năng trình chiếu Sau khi mở file trình chiếu, mặc định bài trình chiếu sẽ ở chế độ chỉnh sửa. Để bắt đầu bài trình chiếu, ngƣời dùng chọn button F5 trên màn hình và khi muốn thoát khỏi chế độ trình chiếu thì ngƣời dụng chọn vào button Esc trên màn hình. 168
  7. KỈ YẾU HỘI NGHỊ SINH VIÊN NGHIÊN CỨU KHOA HỌC NĂM HỌC 2013-2014 Hình 6. Chức năng trình chiếu Ứng với mỗi button đƣợc chọn, Client sẽ sinh ra những câu lệnh điều khiển và gửi đến Server yêu cầu thực hiện công việc tƣơng ứng nhƣ khi bấm phím F5 và Esc trên bàn phím. 3.2.4. Chức năng lựa chọn ngôn ngữ Chức năng lựa chọn ngôn ngữ cung cấp cho ứng dụng những gói ngôn ngữ khác nhau tùy thuộc vào sự lựa chọn của ngƣời dùng. Những gói ngôn ngữ này đƣợc tạo ra từ tất cả những thông báo xuất hiện trong ứng dụng nhƣng đƣợc dịch ra những ngôn ngữ tƣơng ứng. Hình 7. Chức năng đa ngôn ngữ Mỗi khi ngƣời dùng lựa chọn thay đổi ngôn ngữ. Một biến chứa ngôn ngữ đƣợc chọn sẽ đƣợc lƣu lại trong cơ sở dữ liệu. Sau đó, ứng dụng sẽ tiến hành tải toàn bộ gói ngôn ngữ tƣơng ứng với ngôn ngữ đƣợc chọn lên giao diện ứng dụng. Gói ngôn ngữ này sẽ trở thành ngôn ngữ mặc định của ứng dụng kể cả khi ứng dụng có bị đóng lại. Sau khi ứng dụng bị tắt đi, khi khởi động lại ứng dụng. Biến chứa ngôn ngữ đƣợc chọn từ lần sử dụng trƣớc sẽ đƣợc kiểm tra. Do đó, ứng dụng sẽ biết ngôn ngữ đƣợc sử dụng lần cuối sử dụng là gì và tải đúng gói ngôn ngữ tƣơng ứng. III. KẾT LUẬN Báo cáo đã nêu lên sự cần thiết của việc thuyết trình. Dù ở công ti, trƣờng học hay thậm chí ở gia đình cũng cần đến thuyết trình để trình bày bản báo cáo, bài giảng, bài 169
  8. KỈ YẾU HỘI NGHỊ SINH VIÊN NGHIÊN CỨU KHOA HỌC NĂM HỌC 2013-2014 nghiên cứu,... Những lợi ích khi sử dụng những công cụ hỗ trợ cho giai đoạn chuẩn bị và trình bày bài thuyết trình. Báo cáo cũng chỉ ra những điểm còn hạn chế khi sử dụng phần mềm Microsoft Office PowerPoint để soạn thảo và trình bày bài thuyết trình. Từ đó, đề xuất phát triển ứng dụng Remote Slide nhằm giải quyết những điểm còn hạn chế đó. Remote Slide là ứng dụng đƣợc cài đặt trên điện thoại sử dụng hệ điều hành Android kết nối qua wifi với Server đƣợc cài đặt trên máy tính đề điều khiển bài thuyết trình. Sử dụng Remote Slide, ngƣời dùng có thể di chuyển linh hoạt trong phạm vi phòng học, phòng thuyết trình mà vẫn có thể chủ động điều khiển bài thuyết trình mà không cần phải đến gần máy tính có kết nối với máy chiếu để điều khiển. Ứng dụng cung cấp cho ngƣời dùng những chức năng nhƣ điều chuyển slide, sử dụng con trỏ để trỏ vào một vị trí trên slide hay click vào những đối tƣợng trên slide, ngoài ra ứng dụng còn cung cấp các chức năng điều khiển cơ bản nhƣ bắt đầu hay kết thúc bài thuyết trình. Ứng dụng đã đƣợc giới thiệu và phát hành tại địa chỉ: - Server: http://remoteslide.jimdo.com - Client: https://play.google.com/store/apps/details?id=edu.dongthang.screens Mặc dù đã cung cấp những chức năng cơ bản nhất, nhƣng để hoàn thiện hơn về chức năng và khả năng hoạt động ổn định thì ứng dụng cần phải đƣợc tiếp tục phát triển và cải tiến ở những phiên bản tiếp theo. TÀI LIỆU THAM KHẢO [1] Lauren Darcey, Shane Conder, Sams Teach Yourself Android Application Development in 24 Hours, U.S. Corporate and Government Sales, 2010. [2] O‟ Reilly, Programing Android, O‟Reilly Media, Inc., 1005 Gravenstein Highway North, Sebastopol, 2011. [3] Reto Meier, Professional Android™ Application Development, Wiley Publishing, Inc, 2009. [4] Trƣơng Thị Ngọc Phƣợng, Lập trình Android, NXB Thời đại, 2012. [5] Nguyễn Hữu Bình, Nguyễn Văn Hoài, Đặng Xuân Hƣờng, Nguyễn Tiến, Giáo trình cấu trúc cơ sở dữ liệu và giải thuật Java, NXB Thống kê, 2001. [6] Đoàn Văn Ban, Lập trình Java nâng cao, NXB Khoa học Kĩ thuật, 2006. [7] Nguyễn Viết Linh, Đậu Quang Tuấn, Hướng dẫn lập trình mạng bằng Java, NXB Thành Nghĩa, 2001. 170
nguon tai.lieu . vn