Xây dựng chương trình download video từ trang web youtube com cho điện thoại di động

69 446 0
Xây dựng chương trình download video từ trang web youtube com cho điện thoại di động

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

LỜI CAM ĐOAN Tôi xin cam đoan đồ án tốt nghiệp : “Xây dựng chương trình download video từ trang web youtube.com cho điện thoại di động” công trình nghiên cứu thân Các nội dung nghiên cứu kết đề tài hoàn toàn trung thực chưa công bố công trình trước Các module thông số chương trình demo kết trình thực đồ án Ngoài sử dụng số kiến thức, thông tin tác giả khác thể phần tài liệu tham khảo Nếu phát có bất gian lận xin chịu trách nhiệm trước Hội đồng, kết đồ án Thái Nguyên, tháng 06 năm 2012 Sinh viên thực đồ án : Hoàng Chí Ngụy LỜI CẢM ƠN Trước tiên xin dành lời cảm ơn chân thành sâu sắc tới thầy giáo, cô giáo trường Đại học Công Nghệ Thông Tin Và Truyền Thông thầy cô giáo khoa Công Nghệ Thông Tin, môn Mạng Truyền Thông nói riêng tận tình giảng dạy truyền đạt cho nhứng kiến thức, kinh nghiệm quí báu suốt thời gian vừa qua Đặc biệt xin gửi lời cảm ơn tới cô giáo ThS.Nguyễn Thị Mai Phương, cô tận tình giúp đỡ, trực tiếp bảo, hướng dẫn suốt trình làm đồ án tốt nghiệp Trong thời gian làm việc với cô, không ngừng tiếp thu thêm nhiều kiến thức bổ ích mà học tập tinh thần làm việc, thái độ nghiên cứu nghiêm túc, hiệu Đây điều cần thiết cho em trình học tập công tác sau Ngoài ra, trình thực đồ án nhận nhiều động viên giúp đỡ từ phía gia đình, người thân tập thể bạn lớp Do kết tính khả dụng luận văn thực tế lời cảm ơn sâu sắc gửi tới người nguồn động lực để tự tin vào kiến thức thu sau tốt nghiệp Thái Nguyên, tháng 06 năm 2012 Sinh viên thực đồ án : Hoàng Chí Ngụy MỤC LỤC DANH MỤC HÌNH ẢNH DANH MỤC BẢNG BIỂU LỜI NÓI ĐẦU Hiện nay, với phát triển mạnh mẽ công nghệ thông tin nhu cầu người việc chia sẻ video ngày trở nên phổ biến tiện lợi Trong giới ngày nay, cách đơn giản nhanh để ta biết đến tiếng toàn giới thông qua Internet Cùng với phát triển máy tính bảng, điện thoại thông minh giúp cho người có nhiều lựa chọn để trao đổi thông tin Người sử dụng sử dụng mạng xã hội trang web chia sẻ hình ảnh video để đăng tải thông tin mình, giúp cho việc kết nối bạn bè thuận lợi Youtube.com số trang web đời với mục đích chia sẻ video Tuy nhiên, với phát triển công nghệ thông tin trang web không đăng tải video cá nhân mà bao gồm nhiều loại như: âm nhạc, truyền hình, phim ảnh … Lợi ích trang web thực tế, có điều đáng tiếc trang web hỗ trợ người dùng upload lên miễn phí mà không hỗ trợ tải video Chương trình xây dựng nhằm giúp cho người sử dụng download video yêu thích điện thoại mình, giúp cho người dùng chủ động việc chia sẻ quản lý video Với dòng chữ này, xin dành để gửi lời cảm ơn chân thành sâu sắc tới cô giáo : ThS.Nguyễn Thị Mai Phương người tận tình hướng dẫn, bảo tạo cho điều kiện tốt từ bắt đầu hoàn thành đồ án Thái Nguyên, tháng 06 năm 2012 Sinh viên thực đồ án : Hoàng Chí Ngụy Chương : CƠ SỞ LÝ THUYẾT 1.1 Tìm hiểu chung Java Java ngôn ngữ lập trình Sun Microsystems giới thiệu vào tháng năm 1995 Từ đó, trở thành công cụ lập trình lập trình viên chuyên nghiệp Java xây dựng tảng C C++ Do sử dụng cú pháp C đặc trưng hướng đối tượng C++ Vào năm 1991, nhóm kỹ sư Sun Microsystems có ý định thiết kế ngôn ngữ lập trình để điều khiển thiết bị điện tử tivi, máy giặt, lò nướng, … Mặc dù C C++ có khả làm việc trình biên dịch lại phụ thuộc vào loại CPU Trình biên dịch thường phải tốn nhiều thời gian để xây dựng nên đắt Vì để loại CPU có trình biên dịch riêng tốn Do nhu cầu thực tế đòi hỏi ngôn ngữ chạy nhanh, gọn, hiệu độc lập thiết bị tức chạy nhiều loại CPU khác nhau, môi trường khác “Oak” đời vào năm 1995 đổi tên thành Java Mặc dù mục tiêu ban đầu cho Internet đặc trưng không phụ thuộc thiết bị nên Java trở thành ngôn ngữ lập trình cho Internet Java công nghệ xây dựng ứng dụng phần mềm có vị trí lớn năm cuối kỉ 20, đầu kỉ 21 Nó coi công nghệ mang tính cách mạng khả thi việc tạo ứng dụng có khả chạy thống nhiều tảng mà cần biên dịch lần Ngày nay, Java tảng tất yếu ứng dụng quy mô lớn doanh nghiệp nhờ vào khả mở rộng tảng vô phong phú mà cung cấp Java trải qua bước phát triển quan trọng: Java 1.0 gắn liền với JDK đầu tiên, Java gắn với JDK 1.2 Java gắn với J2SDK 1.5 Đối với Java người ta không nhắc đến ngôn ngữ lập trình mà nhắc đến công nghệ hay tảng phát triển, bao gồm phận: - Máy ảo Java: JVM - Bộ công cụ phát triển: J2SDK - Các đặc tả chi tiết kĩ thuật (specifications) - Ngôn ngữ lập trình (programming language) - Các công nghệ kèm JSP, Servlet, EJB, JDBC, JNDI, JMX, RMI… framework Struts, Spring, JSF, Hibernate, JavaFX Nhũng ưu điểm java : • Đơn giản (simple): Java đơn giản vì, dựa sở C++ Sun cẩn thận lược bỏ tính khó C++ để làm cho ngôn ngữ dễ sử dụng Là ngôn ngữ lập trình hoàn toàn mới, buộc phải có dáng vẻ cảm nhận tương tự ngôn ngữ phổ biến hành đồng thời đòi hỏi khoảng thời gian huấn luyện lại tối thiểu thân thiện với người dùng Do đơn giản, ngôn ngữ nhỏ - nên nhớ từ đầu xây dựng để dùng cho điện tử dân dụng đầu chạy video hộp điều khiển từ xa, thiết bị có không gian lưu trữ hạn chế • Hướng đối tượng (Object Oriented): Hướng đối tượng Java tương tự C++ Java ngôn ngữ lập trình hướng đối tượng hoàn toàn Tất thứ đề cập đến Java liên quan đến đối tượng định nghĩa trước, chí hàm chương trình viết Java (đó hàm main) phải đặt bên lớp Hướng đối tượng Java tính đa kế thừa (multi inheritance) C++ mà thay vào Java đưa khái niệm interface để hỗ trợ tính đa kế thừa • Hiểu mạng (network-savvy): Java lập để hoạt động mạng có thủ tục để quản lý giao thức mạng TCP/IP, FTP HTTP Nói cách khác, Java xây dựng để thực hoàn toàn thích hợp Internet Chương trình Java chí xâm nhập vào đối thượng khác thông qua Internet cách sử dụng URL (địa Web) để định vị chúng • Mạnh mẽ (robust): Khả mạnh phải phù hợp với thiết kế ngôn ngữ, hướng vào việc khắc phục hư hỏng nhớ đảm bảo tính toán vẹn liệu Ví dụ, Java có tính "automatic garbage collection" (tự động thu gom rác) - có nghĩa nhớ giải phóng cách tự động - nên lập trình viên bận tâm việc quản lý nhớ nhờ có xu hướng làm việc gây hỏng nhớ • An toàn (secure): Khả hướng mạng Java tự động đưa yêu cầu an toàn Đặc tính an toàn ngôn ngữ lập trình bắt nguồn từ việc có phần hạn chế cài sẵn nhằm đề phòng chương trình Java thực chức ghi vào ổ cứng người dùng hay cho phép virus từ mạng từ môi trường phân tán thâm nhập vào • Độc lập với cấu trúc (architecture neutral): Đây thuộc tính đặc sắc Java Java tạo với tiêu chí "Viết (code) lần, thực thi khắp nơi" ("Write Once, Run Anywhere" (WORA)) Tính biên dịch lần chạy nhiều đạt nhờ just-in-time compiler (JIT), chuyển mã bytecode Java sang mã máy chương trình chạy Chương trình phần mềm viết Java chạy tảng (platform) khác thông qua môi trường thực thi với điều kiện có máy ảo java thích hợp hỗ trợ tảng Môi trường thực thi Sun Microsystems hỗ trợ Sun Solaris, Linux, Mac OS, FreeBSD , Windows nhiều hệ thống cài đặt thiết bị di độngDi động (portable): Đối với phạm vi rộng, Java loại di chuyển nhờ khả độc lập với hệ máy Đồng thời, loại liệu, giao diện, dáng vẻ cảm nhận Java giống hệ máy Hệ thống thành phần java có tính di động cao - viết Java • Thông dịch (Interpreter): Java ngôn ngữ lập trình vừa biên dịch vừa thông dịch Chương trình nguồn viết ngôn ngữ lập trình Java có đuôi *.java biên dịch thành tập tin có đuôi *.class sau trình thông dịch thông dịch thành mã máy Để chạy Java bytecode, cần cài đặt JRE (Java Runtime Environment) JRE cung cấp thư viện bản, Java Virtual Machine, plugin cho trình duyệt, thứ khác • Tốc độ cao (high perfprmance): Khi Sun Microsystems mô tả Java có tốc độ cao, có lẽ họ muốn nói mã bytecode thông dịch hiệu ( Java thường chạy nhanh ngôn ngữ lập trình thông dịch khác Python, Perl, PHP ) Về tốc độ applet hay chương trình Java nói chung chậm chương trình Java nói chung chậm chương trình biên dịch viết C++, chương trình tối ưu hoá từ trước cho hệ máy định Java phải trả giá hiệu suất cho tính không phụ thuộc hệ • Đa luồng (multithreaded): Đa luồng có nghĩa ngôn ngữ Java cho phép xây dựng trình ứng dụng, đó, nhiều trình xảy đồng thời Tính đa luồng cho phép nhà lập trình biên soạn phần mềm đáp ứng tốt hơn, tương tác tốt hơn, thực theo thời gian thực • Tính động (dynamic): Java động thiết kế để đáp ứng với môi trường tác nghiệp tình trạng thay đổi Khi có yêu cầu xuất thị trường, loại đối tượng bổ sung vào 1.2 Tổng quan J2ME 1.2.1 Lịch sử phát triển J2ME J2ME phát triển từ kiến trúc Java Card, Embeded Java Personal Java phiên Java 1.1 Đến đời Java Sun định thay Personal Java đươc gọi với tên Java Micro Edition, hay viết tắt J2ME Đúng với tên gọi, J2ME tảng cho thiết bị có tính chất nhỏ, gọn 10 - Gửi tin nhắn : Để gửi tin nhắn cho người sử dụng, xây dựng đối tượng VideoMessageEntry chèn vào nguồn cấp liệu hộp thư người dùng Bất kỳ tin nhắn gửi thông qua API phải định đối tượng VideoEntry - Xóa tin nhắn : Để xóa tin nhắn, gọi phương thức xóa đối tượng VideoMessageEntry: entry.delete (); - Hoạt động nguồn cấp liệu : Hoạt động nguồn cấp liệu danh sách mà người dùng cụ thể thực trang web YouTube API cho phép bạn lấy hai loại hoạt động: - Một nguồn cấp liệu đăng ký hoạt động xác định hành động liên kết với thuê bao người dùng xác thực - Một nguồn cấp liệu hoạt động người dùng xác định hành động thực nhiều người sử dụng quy định yêu cầu API - Xử lý theo danh sách : YouTube liệu API hỗ trợ xử lý theo danh sách, cho phép bạn thực lên đến 50 hoạt động với yêu cầu API gửi yêu cầu riêng biệt cho hoạt động cá nhân Một yêu cầu xử lý hàng loạt kết hợp truy vấn nhiều (GET), chèn (POST), cập nhật (PUT) xóa (DELETE) hoạt động Xử lý hàng loạt có sẵn cho tất nguồn cấp liệu YouTube, loại khác nguồn cấp liệu hỗ trợ nhiều loại khác chạy hàng loạt Ví dụ, ta cập nhật, chèn thêm xóa danh sách nhạc Tuy nhiên, ta chèn thêm xóa video yêu thích kể từ đoạn video yêu thích cập nhật 3.3 Cài đặt kết 3.3.1 Cài đặt Chương trình cài đặt ngôn ngữ J2ME công cụ java Sun Java tảng ứng dụng phổ biến dòng điện thoại 55 Ta nhận thấy có mặt cúa chúng nhiều thiết bị di động từ điện thoại cấp thấp đến smartphone Bên cạnh đó, java J2ME tốn dụng lượng nhớ ram nên hỗ trợ cho chương trình chạy mượt mà Mặt khác, J2ME hỗ trợ tốt việc kết nối sử dụng luồng để tải liệu từ trang chủ di động Với chương trình tôi, người sử dụng nhập từ khóa mà họ muốn tìm kiếm Chương trình cung cấp cho người sử dụng thông tin liên quan đến từ khóa mà người sử dụng tìm kiếm Người sử dụng xem số thông tin video : hình ảnh, ngày upload, độ dài video, thích video… Từ người sử dụng nhận biết video mà họ chuẩn bị download có thực phù hợp với nhu cầu thực họ hay không? Chương trình hỗ trọ người sử tải danh sách video, video yêu cầu tải xếp dạng hàng đợi Video đứng sau download máy video trước hoàn tất việc download Mặt khác, danh sách người sử dụng xóa video hàng đợi thấy không khả thi Chương trình hỗ trợ tải tất định dạng youtube sử dụng đồng thời hỗ trợ download video có độ phân giải cao (720p,1080p…) Với thời gian nghiên cứu tìm hiểu phát triển thành công chương trình download video cho điện thoại di động Nó đáp ứng yêu cầu tải video mà người dùng thích điện thoại di động để tạo điều kiện thuận tiện việc quản lý chia sẻ video Dưới số sơ đồ miêu tả cách tổng quan chương trình chức tương ứng Sơ đồ chức tổng thể chương trình: 56 Giao Giao diện diện chính của chương chương trình trình Form Form tìm tìm kiếm kiếm Form Form tổng tổng thể thể download download Form Form cài cài đặt đặt Form Form trợ trợ giúp giúp Form Form thông thông tin tin Hình 3.1 : Các Form chương trình • • • • Tìm Tìm kiếm kiếm Form Form danh danh sách sách download download Xem Xem list list danh danh sách sách download download Xem Xem thông thông tin tin cơ bản của video video Download Download • • Loại Loại video video Chọn Chọn nơi nơi lưu lưu • Form trợ giúp Form trợ giúp Trợ Trợ giúp giúp khi xẩy xẩy ra • Thông Thông tin tin chương chương trình trình lỗi lỗi Form Form cài cài đặt đặt Form Form thông thông tin tin Form Form tìm tìm kiếm kiếm Hình 3.2 : Các Form chức tương ứng 3.3.2 Giao diện chương trình Form giao diện chương trình, mô tả chức tổng quát ứng dụng Trong hình năm lựa chọn ứng dụng Bao gồm có form tìm kiếm để tìm kiếm video, form danh sách download chứa file video mà ta thực download Form cài đặt hỗ trợ người dùng tùy chọ lưu trữ video trực tiếp thẻ nhớ nhớ điện thoại Form trợ giúp hỗ trợ người dùng xử lý cố mà người dùng gặp phải lỗi kết nối, kết tìm kiếm… Và form thông tin chứa thông tin phiên sử dụng tác giả chương trình Người sử dụng tùy chọn chức menu để thực tác vụ mong muốn 57 Hình 3.3 : Giao diện chương trình Dưới giao diện form tìm kiếm, người sử dụng nhập từ khóa cần tìm vào textbox tìm kiếm video YouTube , sau kết tìm kiếm thị bên ô textbox tìm kiếm 58 Hình 3.4 : Giao diện Form tìm kiếm Hình 3.5 : Các chức Form tìm kiếm 59 Hình 3.6 : Tìm kiếm với từ khóa Hình 3.7 : Tìm kiếm với từ khóa “ha noi” 60 Hình 3.8 : Kết tìm kiếm với từ khóa “ha noi” Sau thị kết tìm kiếm với yêu cầu từ khóa người dùng chọn chức xem thông tin video Chức cung cấp cho người dùng thông tin tổng quan video bao gôm : tên, thông tin đính kèm, ngày upload… Đặt biệt form cho phép người dùng xem trước video mà muốn download Qua cung cấp nhìn tổng quan người sử dụng tìm video hợp lý trước tiến hành download video điện thoại di động Dưới hình thông tin video hà nội, bao gôm có người upload, số lượng view, thông tin video, cửa sổ cho phép người dùng xem trước video 61 Hình 3.9 : Thông tin video “ha noi” Tiếp theo số hình ảnh bên giao diện form trợ giúp người sử dụng form chứa thông tin chương trình Form trợ giúp hỗ trọ người dùng lỗi mà người dùng gặp phải sử dụng chương trình Đồng thời, chương trình hỗ trợ người dùng xử lý lỗi kỹ thuật Form thông tin chứa thông tin chương trình, số phiên bản, tác giả, chương trình xây dựng tảng email để liên lạc có trục trặc sử dụng chương trình 62 Hình 3.10 : Form trợ giúp người sử dụng Hình 3.11 : Hướng dẫn trợ giúp chi tiết cho người sử dụng 63 Hình 3.12 : Form thông tin chương trình Form cài đặt, cho phép người dùng thay đổi nơi lưu trữ video Đối với số dòng điện thoại phổ thông nhớ máy nhỏ nên người sử dụng chuyển nhớ nhày qua thẻ nhớ Với nơi lưu trữ người dùng lựa chọn nhiều định đạng khác , có định đạng full HD cho điện thoại From download video cho phép người dùng thay đổi tên video thành tên mà người dùng muốn lưu trữ Tuy nhiên, tên video bắt buộc người dùng không để trống Ngoài form cung cấp định dạng mà youtube hỗ trợ cho video người sử dụng Người sử dụng lựa chọn định đạng cho phù hợp với yêu cầu thân 64 Hình 3.13 : Form cài đặt lưu trữ video Hình 3.14 : Form download video 65 Form danh sách download chứa file video mà ta down down điện thoại Với file download người dùng thấy % download tải máy Nếu người sử dụng down nhiều video khoảng thời gian, video sau đưa vào hàng đợi Sau video trước hoàn thành video tiến hành download Quá trình kết thúc không video phải đợi, hoàn thành hết danh sách Ngoài form hỗ trợ người dùng xóa list danh sách download Mặt khác, từ người dùng quay form tìm kiếm để tìm vào download thêm video khác Hình 3.15 : Form danh sách download video 66 Dưới số form thông báo chương trình hoạt động, yêu cầu người dùng phải chờ đợi thời gian ngắn để hệ thống xử lý Hình 3.16 : Thông báo xử lý tải thông tin video Hình 3.17 : Thông báo bắt đầu download video 67 KẾT LUẬN Đồ án trình bày số khái niệm kỹ thuật lập trình với ngôn ngữ J2ME Nắm kiến thức ngôn ngữ J2ME, vận dụng ngôn ngữ vào việc xây dựng chương trình Mặt khác, đồ án tìm hiểu việc phân tích thiết kê cho hệ thống UML, xây dựng loại biểu đồ để sử dụng cho lập trình Với mục đích xây dựng chương trình download video cho dòng điện thoại phổ thông Qua thời gian tìm hiểu nghiên cứu, phát triển thành công sản phẩm Ứng dụng sản phẩm cho người sử dụng tải video yêu thích từ trang web youtube.com lúc, mơi Trong thời gian làm đồ án tìm hiểu nhiều thông tin thú vị, bổ ích dịch vụ chia sẻ video lớn giới Mặt khác tích lũy nhiều vốn kiến thức lập trình để xây dựng chương trình Mặc dù cố gắng để hoàn thiện đồ án, chắn tránh thiếu sót, mong nhận bảo giúp đỡ thầy cô giáo, với góp ý kiến quan tâm 68 TÀI LIỆU THAM KHẢO [1] ThS Trịnh Công Duy – “Mobile programming” ( Đại học bách khoa Đà Nẵng) [2] Đoàn Văn Ban – “Phân tích, thiết kế hướng đối tượng UML” (Viện công nghệ thông tin – 2010) [3] PGS.TS Đặng Văn Đức – “Phân tích thiết kế hướng đối tượng” (Viện khoa học công nghệ, 2002) [4] John W Muchow – “Core J2ME™ Technology & MIDP” ( December 21, 2001) [5] Adegboyega Ojo Elsa Estevez – “Object-Oriented Analysis and Design with UML” (10/2005) [6] www.google.com [7] www.youtube.com [8] http://code.google.com/intl/vi -VN/apis/youtube/2.0/developers_guide_java.html 69 ... phí mà không hỗ trợ tải video Chương trình xây dựng nhằm giúp cho người sử dụng download video yêu thích điện thoại mình, giúp cho người dùng chủ động việc chia sẻ quản lý video Với dòng chữ này,... nghĩa dành riêng cho thiết bị di động thành phần J2ME MIDP cung cấp chức cho hầu hết dòng thiết bị di động phổ biến máy điện thoại di động máy PDA Tuy nhiên MIDP đũa thần cho lập trình viên biết,... lập trình thông dịch khác Python, Perl, PHP ) Về tốc độ applet hay chương trình Java nói chung chậm chương trình Java nói chung chậm chương trình biên dịch viết C++, chương trình tối ưu hoá từ

Ngày đăng: 19/04/2017, 22:33

Từ khóa liên quan

Mục lục

  • LỜI CẢM ƠN

  • MỤC LỤC

  • DANH MỤC HÌNH ẢNH

  • DANH MỤC BẢNG BIỂU

  • Chương 1 : CƠ SỞ LÝ THUYẾT

    • 1.1 Tìm hiểu chung về Java

    • 1.2 Tổng quan về J2ME

      • 1.2.1 Lịch sử phát triển của J2ME

        • Hình 1.1 : Các phiên bản của J2ME

        • 1.2.2 Kiến trúc của J2ME

          • Hình 1.2 : Kiến trúc của J2ME

          • Hình 1.3 : Hai loại Configuration CDC và CLDC.

            • Bảng 1.1: Bảng so sánh các thông số kỹ thuật của CDC và CLDC.

            • 1.2.3 Giới thiệu về MIDP

            • 1.2.4 MIDlet

              • Hình 1.4 : Vòng đời của một MIDlet.

              • 1.2.5 Hệ thống bản ghi

                • Bảng 1.2: Bảng một số kiểu dữ liệu của RecordStore.

                • Hình 1.6 : Ví dụ về MIDlet thứ hai.

                  • Bảng 1.3 : Bảng các record store không có hàm khởi tạo.

                  • Bảng 1.4 : Bảng Record Enumeration API.

                  • 1.2.6 Kết nối truyền thông

                    • Hình 1.7 : Cây phân cấp Connection.

                      • Bảng 1.5 : Bảng các phương thức của lớp Connector.

                      • Bảng 1.6 : Bảng các phương thức của Header.

                      • Bảng 1.7 : Bảng các Http Connection API.

                      • 1.3 Tìm hiểu về trang web chia sẻ video youtube.com

                        • 1.3.1 Lịch sử phát triển

                        • 1.3.2 Lợi ích của Youtube

                        • 1.3.3 Những điều thú vị về Youtube

                        • Chương 2 : KHẢO SÁT, PHÂN TÍCH VÀ THIẾT KẾ CHO CHƯƠNG TRÌNH YOUTUBE DOWNLOAD

                          • 2.1 Phân tích thiết kế cho ứng dụng

                            • 2.1.1 Mô tả yêu cầu hệ thống

Tài liệu cùng người dùng

Tài liệu liên quan