Xây dựng ứng dụng IOS kết hợp webservice

82 84 0
Xây dựng ứng dụng IOS kết hợp webservice

Đ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

Trường ĐH Giao Thơng Vận Tải Tp.HCM KHOA CƠNG NGHỆ THÔNG TIN LUẬN VĂN TỐT NGHIỆP Đề tài: XÂY DỰNG ỨNG DỤNG IOS KẾT HỢP WEBSERVICE Ngành : Chuyên ngành : Công nghệ thông tin GVHD : THS NGUYỄN LƯƠNG ANH TUẤN SVTH : NGUYỄN VĂN ĐƯỜNG ĐỖ TUẤN ANH Lớp : CN08 Tp Hồ Chí Minh năm 2012 LỜI MỞ ĐẦU  Nhu cầu thực tế lý chọn đề tài Với đời máy tính bảng (tablet) dòng điện thoại thơng minh (smart phone) có cấu hình ngày “khủng” song hành nhiều tảng hệ điều hành di động thân thiện với người dùng không phần mạnh mẽ, nhắc tới thiết bị di động, người dùng khơng nghĩ tới điện thoại đơn để nghe, gọi, nhắn tin trước Thiết bị di động đáp ứng nhu cầu người từ làm việc, liên lạc, giao tiếp, giải trí, v.v… Bên cạnh đó, nhờ vào tiện lợi tính thẩm mĩ, thiết bị di động ngày thể ưu so với máy tính PC truyền thống Song hành với bùng nổ của thiết bị di động phát triển không ngừng công nghệ truyền thông tốc độ cao Công nghệ 3G, 4G đời đem đến cho thiết bị di động tốc độ kết nối truyền tải liệu ngày nhanh, không thua mạng băng thơng rộng truyền thống PC Nhờ vào phát triển rông rãi thiết bị di động kéo theo tăng trưởng không ngừng ngành công nghiệp phần mềm di động Phát triền phần mềm di động Việt Nam giai đoạn phát triển hứa hẹn nhiều tiềm tương lai Từ lý dó đó, chúng em định chọn đề tài cứu môi trường phát triển ứng dụng cho thiết bị di động xây dựng ứng dụng đọc tin tức trực tuyến hệ điều hành iOSkết hợp xây dựng hệ thống webservice  Mục tiêu đề tài Như tên gọi, thiết bị di động thiết bị nhỏ gọn, thiết kế phục vụ chủ yếu cho nhu cầu liên lạc giải trí người dùng di chuyển Cấu hình thiết bị di động ngày nâng cao nhiên so với máy tính để bàn Lập trình di động mảng mẻ nhiều khác biệt so với mơi trường lập trình ứng dụng truyền thống Ngoài việc xây dựng hệ thống webservice phục vụ cho thiết bị di động có khác biệt định so với hệ thống cho website hay máy tính trạm Do vậy, nội dung đề tài cần giải công việc sau:  Tìm hiểu tảng lập trình cho thiết bị di động, ngơn ngữ lập trình, cơng cụ hỗ trợ lập trình di động  Tìm hiểu cơng nghệ phát triển ứng dụng di động có, tìm ưu, nhược điểm loại công nghệ  Nghiên cứu hệ thống webservice, công nghệ xây dựng webservice phổ biến  Lựa chọn công nghệ xây dựng webservice cho ứng dụng di động  Xây dựng ứng dụng đọc tin tức online hệ điều hành iOS có sử dụng hệ thống webservice  Nội dung đề tài:  Chương 1: Sơ lược thiết bị di động ứng dụng di động  Chương 2: Tổng quan hệ điều hành iOS  Chương 3: Mơi trường lập trình ứng dụng iOS  Chương 4: Công nghệ Webservice  Chương 5: Xây dựng đọc tin tức trực tuyến cho iPhone  Kết luận: Kết đạt hướng phát triển TP.Hồ Chí Minh, ngày tháng 10 năm 2012 Sinh viên thực hiện: Nguyễn Văn Đường Đỗ Tuấn Anh MỤC LỤC LỜI MỞ ĐẦU MỤC LỤC MỤC LỤC HÌNH ẢNH Chương 1: Sơ lược thiết bị di động ứng dụng di động .8 1.1 Sơ lược thiết bị di động .8 1.2 Hệ điều hành di động .9 1.3 Ứng dụng di động 1.4 Phân loại ứng dụng di động .10 Chương 2: Tổng quan hệ điều hành iOS 11 2.1 Tổng quan hệ điều hành iOS 12 2.2 Các phiên hệ điều hành iOS 12 2.3 Các thiết bị di động sử dụng tảng iOS 15 Chương 3: Mơi trường lập trình ứng dụng iOS 16 3.1 Bộ cơng cụ lập trình Xcode 16 3.1.1 Giới thiệu 16 3.1.2 Giao diện làm việc Xcode 17 3.2 Ngôn ngữ lập trình Objective-C 21 3.2.1 Lịch sử đời phát triển 21 3.2.2 Đặc điểm .22 3.3 Tổng quan lập trình iOS 26 3.3.1 Hỗ trợ đa nhiệm (multi – threading) 27 3.3.2 Một ứng dụng có cửa sổ 27 3.3.3 Hạn chế việc truy cập .27 3.3.4 Hạn chế thời gian phản hồi hệ thống 28 3.3.5 Hạn chế kích thước hình 28 3.3.6 Hạn chế tài nguyên hệ thống .28 3.3.7 Những lợi thiết bị chạy iOS 28 3.3.8 Cách tiếp cận khác so với lập trình thiết bị máy tính truyền thống 29 3.4 Kiến trúc ứng dụng iOS 29 3.4.1 Mơ hình kiến trúc ứng dụng iOS chuẩn .29 3.4.1 Vòng đời ứng dụng iOS (application life cycle) .31 Chương 4: Công nghệ Webservice 35 4.1 Giới thiệu ứng dụng phân tán 36 4.1.1 Tổng quan hệ phân tán 36 4.1.2 Mơ hình hệ thống phân tán 38 4.1.3 Các vấn đề nảy sinh hệ thống phân tán 38 4.1.4 Các hệ thống phân tán 38 4.1.5 Hạn chế hệ thống phân tán 39 4.2 Dịch vụ web (Web Service) 40 4.2.1 Khái niệm web service .40 4.2.2 Đặc điểm dịch vụ Web 40 4.2.3 Ưu nhược điểm dịch vụ web .41 4.2.4 Kiến trúc dịch vụ Web .42 4.2.5 Các thành phần dịch vụ Web .44 4.2.6 Bảo mật cho dịch vụ web 48 4.2.7 Xây dựng dịch vụ web 50 4.2.8 Tích hợp dịch vụ web theo chuẩn 51 4.3 JSON .53 4.3.1 Khái niệm JSON 53 4.3.2 Đặc trưng SON .53 4.3.3 Cấu trúc SON 54 4.3.4 Cú pháp SON 54 4.3.5 Sử dụng son tình 59 Chương 5: Xây dựng ứng dụng đọc tin tức trực tuyến cho Iphone 61 5.1 Xây dựng ứng dụng Client iOS device .63 5.1.1 Sơ đồ S -CASE 63 5.1.2 anh sách ctor .63 5.1.3 anh sách S -CASE 64 5.1.3 anh sách hình 64 5.1.4 Mơ tả chi tiết hình .65 5.2 Xây dựng hệ thống Server (Webservice) 70 5.2.1 Yêu cầu từ client(ứng dụng IOS) .70 5.2.2 Sơ đồ chức Server .70 5.2.3 anh sách service cung cấp liệu cho client 70 5.2.3 anh sách hình 72 5.2.4 Mô tả chi tiết hình 73 KẾT LUẬN 78 Một số kết đạt .78 Hướng phát triển 79 DANH MỤC TÀI LIỆU THAM KHẢO .80 Danh mục tài liệu tham khảo .80 Danh mục website tham khảo 80 MỤC LỤC HÌNH ẢNH Hình 1: Tạo project XCode .18 Hình 2:Giao diện làm việc XCode 19 Hình 3:Giới thiệu giao diện XCode 20 Hình 4:Giao diện Interface Builder 21 Hình 5: Mơ hình MVC 30 Hình 6: Vòng đời ứng dụng iOS (1) 32 Hình 7: Vòng đời ứng dụng iOS (2) 33 Hình 8: vòng đời ứng dụng iOS (3) 34 Hình 9: Vòng đời ứng dụng iOS (4) 35 Hình 10: Mơ hình hệ thống phân tán 38 Hình 11:Chồng giao thức dịch vụ web .43 Hình 12:Kiến trúc sâu dịch vụ web .44 Hình 13: Cấu trúc value SON 55 Hình 14: Cấu trúc Object SON 56 Hình 15: Cấu trúc array SON 57 Hình 16: Cấu trúc string SON 58 Hình 17: Cấu trúc number SON .59 Hình 18: Mơ hình hoạt động hệ thống sử dụng JSON .59 Hình 19: Ví dụ liệu kiểu JSON .60 Hình 20: Sơ đồ USE CASE ứng dụng 63 Hình 21: Màn hình 65 Hình 22: Màn hình danh sách tin chuyên mục .67 Hình 23: Màn hình tìm kiếm .68 Hình 24: Màn hình nội dung chi tiết tin 69 Hình 25: Sơ đồ chức Server .70 Hình 26: Màn hình đăng nhập (server) .73 Hình 27: Màn hình quản lý danh sách chuyên mục (server) 74 Hình 28: Màn hình quản lý tin tức (server) .74 Hình 29: : Màn hình chọn website lấy tin tự động (server) 75 Hình 30: Màn hình chọn chuyên mục để lấy tin tự động (server) 75 Hình 31: Màn chọn tin để lấy tự động (server) 76 Hình 32: Màn hình thêm tin tay (server) 77 Chương 1: Sơ lược thiết bị di động ứng dụng di động 1.1 Sơ lược thiết bị di động Thiết bị di động (hay gọi thiết bị cầm tay) thiết bị nhỏ gọn, thường có hình hiển thị với đầu vào bàn phím cảm ứng bàn phím vật lý thu nhỏ Trước đâu nhắc tới thiết bị di động người ta nghĩ tới điện thoại di động thiết bị di động khơng có Sự phát triển mạnh mẽ hệ điều hành di động đem đến cho người dùng thiết bị nhỏ gọn động máy tính PC truyền thống máy tính bảng (tablet), máy đọc sách, hay trí máy nghe nhạc tích hợp hệ điều hành được coi thiết bị di động Những thiết bị di động có hàng loạt tính đại kết nối Wifi, GPS, NFC, 3G , nhờ chúng hoàn toàn đủ khả phục vụ nhu cầu đời sống sinh hoạt người, từ làm việc, liên lạc, tới giải trí Hơn nữa, nhờ vào tính tiện dụng thiết kế đa dạng hợp thời trang, thiết bị di động làm thay đổi hoàn tồn thói quen sử dụng máy tính Hồn tồn nói thời điểm giai đoạn bùng nổ thực thiết bị di động tồn cầu Ngành cơng nghiệp di động thật trở thành mảng thị trường hấp dẫn mà công ty muốn nhắm tới Thị trường di động ngày đa dạng với góp mặt hồng loạt tên tuổi lớn Nokia, pple, Samsung, LG,… trí gần với kiện mazon (nhà bán lẻ trực tuyến lớn Hoa Kì) cho đời máy tính bảng Kindle cho thấy xu hướng thâm nhập thị trường di động mong muốn công ty giới 1.2 Hệ điều hành di động Phần quan trọng làm nên sức mạnh thiết bị di động hệ điều hành Cũng tương tự hệ điều hành máy tính PC, hệ điều hành thiết bị di động phần mềm chạy thiết bị di động dùng để điều hành, quản lý phần cứng tài nguyên phần mềm thiết bị Hệ điều hành đóng vai trò trung gian giao tiếp người dùng thiết bị di động, cung cấp môi trường cho phép phát triển thực ứng dụng cách dễ dàng Ở thời điểm có nhiều hệ điều hành cho thiết bị di động bật phát triển rộng rãi phải kể đến iOS (của Apple), Android (của Google), Window Phone (của Microsoft), BlackBerry OS (của RIM) ngồi có số tên tuổi khác Symbian (của Nokia), Banda OS (của Samsung),Firefox OS, Tizen, Window Mobile… nhiên thị phần hệ điều hành không nhiều 1.3 Ứng dụng di động Ứng dụng di động hiểu ứng dụng phần mềm thiết kế để chạy điện thoại thơng minh, máy tính bảng hay thiết bị di động khác Ứng dụng di động ban đầu cung cấp để phục vụ cho công việc eMail, sổ địa (contact), lịch, chứng khốn, thơng tin thời tiết.Tuy nhiên nhu cầu ngày mở rộng với hỗ trợ mạnh mẽ từ công cụ phát triển, đâu ứng dụng di động trở nên đa dạng, từ game online, GPS, ngân hàng điện tử, đặt vé, … Ứng dụng di động đa phần phân phối chợ ứng dụng hãng sản suất phần mềm hay phần cứng tiếng Một số chợ ứng dụng tiếng gồm có:  pple pp Store: Ra đời với điện thoại tiếng iPhone vào tháng 8/2008, tới App Store pple có tới 625.000 ứng dụng cung cấp cho thiết bị sử dụng hệ điều hành iOS bao gồm iPhone, iPad iPod Touch 5.1.4.2 Màn hình danh sách tin chuyên mục Hình 22: Màn hình danh sách tin chuyên mục Màn hình hiển thị danh sách tin ứng với chuyên mục Mô tả thơng tin có hình: (1) Search button: Điều hướng tới trang tìm kiếm tin (2) Back button: Điều hướng hình (Home Page) (3) Tiêu đề chuyên mục: Hiển thị tên chuyên mục chọn 67 (4) Tin chuyên mục: Hiển thị thông tin bao gồm hình minh họa, tiêu đề mơ tả ngắn nội dung tin chuyên mục Chọn vào tin để qua trang đọc nội dung chi tiết tin (5) anh sách tin: Các tin có chun mục Hiển thị thơng tin bao gồm hình minh họa, tiêu đề, ngày đăng tin Chọn vào tin để sang trang nội dung chi tiết 5.1.4.3 Màn hình Search Hình 23: Màn hình tìm kiếm 68 Trang tìm kiếm tin Mơ tả thơng tin trang tìm kiếm: (1) Back button: Điều hướng trang trước (2) Textbox Search: Nơi nhập nội dung từ khóa tìm kiếm (3) anh sách tin phù hợp với từ khóa tìm kiếm: Hiển thị danh sách thơng tin tin phù hợp với từ khóa người dùng nhập vào Chọn tin để qua trang đọc nội dung chi tiết 5.1.4.3 Màn hình chi tiết tin Trang hiển thị nội dung đầy đủ tin: Hình 24: Màn hình nội dung chi tiết tin 69 5.2 Xây dựng hệ thống Server (Webservice) 5.2.1 Yêu cầu từ client(ứng dụng IOS) - Lấy thông tin chuyên mục tin tức - Lấy thơng tin tin tức ngày gồm có : tiêu đề,mơ tả,nội dung,hình ảnh,ngày gửi - Tìm kiếm tin tức 5.2.2 Sơ đồ chức Server Hình 25: Sơ đồ chức Server 5.2.3 anh sách service cung cấp liệu cho client Lựa chọn SON làm chuẩn truyền tải liệu 70 ST Mô tả Service Request URL T Lấy tin bật http://(server_ip)/luanvan/json.php?request=get_onehotnew ngày Lấy tin http:// (server_ip)/luanvan/json.php?request=get_3lastest_news ngày Lấy tin quảng http:// (server_ip )/luanvan/json.php?request=get_3add_news cáo Lấy danh sách http://(server_ip)/luanvan/json.php?request=get_list_categories chuyên mục tin Lấy tin http://(server_ip)/luanvan/json.php?request=get_firstnews_in_e chuyên ach_category mục Lấy nội dung tin http:// đầy đủ tin (server_ip)/luanvan/json.php?request=get_new_by_id&new_id theo id =(id_news) Ví dụ: http://localhost/luanvan/json.php?request=get_new_by_id&ne w_id=1 Lấy tất http://(server_ip)/luanvan/json.php?request=get_listnews_of_c tin thuộc at&cat_id=(id_category) chun mục Ví dụ: http://localhost/luanvan/json.php?request=get_listnews_of_cat &cat_id=1 Tìm kiếm tin có http://(server_ip)/luanvan/json.php?request=get_search&key=( tiêu đề phù hợp key_word) từ khóa Ví dụ: 71 http://localhost/luanvan/json.php?request=get_search&key=abc 5.2.3 anh sách hình STT Tên hình Màn hình đăng nhập hệ thống ngh a hi Màn hình để admin đăng nhập vào hệ thống Màn hình quản lý danh sách Hiển thị danh sách chuyên mục có chuyên mục Cho phép người quản trị thao tác thêm, xóa, sửa chun mục Màn hình quản lý tin tức Hiển thị thông tin chi tiết tin tức Cho phép thêm , xóa, sửa tin Màn hình chọn website để lấy Hiển thị danh sách website để tự động tin tức tự động lấy tin sở liệu hệ thống Màn hình chọn chuyên mục Cho phép lựa chọn tin lấy từ website để lấy tin tự động thêm vào chuyên mục sở liệu Trang chọn tin tức để lấy tự Hiển thị danh sách tin lấy động từ website chọn để đưa vào sở liệu hệ thống Trang thêm nội dung tin Cho phéo người quản trị tự viết tin thêm tay vào sở liệu 72 5.2.4 Mô tả chi tiết hình 5.2.4.1 Màn hình đăng nhập hệ thống Hình 26: Màn hình đăng nhập (server) 73 5.2.4.2 Màn hình quản lý danh sách chuyên mục Hình 27: Màn hình quản lý danh sách chuyên mục (server) 5.2.4.3 Màn hình quản lý tin tức Hình 28: Màn hình quản lý tin tức (server) 74 5.2.4.4 Màn hình chọn website để lấy tin tức tự động Hình 29: : Màn hình chọn website lấy tin tự động (server) 5.2.4.5 Màn hình chọn chuyên mục để lấy tin tự động Hình 30: Màn hình chọn chuyên mục để lấy tin tự động (server) 75 5.2.4.5 Trang chọn tin tức để lấy tự động Hình 31: Màn chọn tin để lấy tự động (server) 76 5.2.4.5 Trang thêm nội dung tin tay Hình 32: Màn hình thêm tin tay (server) 77 KẾT LUẬN Một số kết đạt Trong q trình thực đề tài, nhóm thu kết sau: Tìm hiểu xu hướng phát triển thiết bị di động thị trường ứng dụng di động Hiểu rõ đặc trưng ứng dụng cho di động, phân loại ứng dụng di động Tìm hiểu thiết bị sử dụng hệ điều hành iOS thị trường kĩ thuật lập trình ứng dụng thiết bị Với số lượng ngƣời sử dụng lớn, việc phát triển kinh doanh phần mềm thiết bị iOS hứa hẹn phát triển mạnh mẽ thời gian tới Tìm hiểu hệ điều hành iphone (iOS) thiết bị di động sử dụng hệ điều hành – vốn ưu chuộng thị trường Đi sâu nghiên cứu cách thức lập trình Objective-C iphone 4S – dòng điện thoại thơng minh ưa chuộng Tìm hiểu hệ thống webservice ứng dụng cho việc xây dựng ứng dụng cho thiết bị di động Xây dựng ứng dụng đọc báo thiết bị di động với hệ thống client thiết bị chạy iOS server cung cấp webservice hoàn chỉnh Với chế xử lý liệu bất đồng giúp trải nghiệm người dùng tốt  Ưu điểm: Nhìn chung trương trình hồn thành tốt u cầu đặt ra, xây dựng hệ thống hoàn chỉnh với ứng dụng thiết bị hệ 78 thống server cung cấp thông tin trưc tiếp Hiệu suất trương trình tốt, khơng gây cảm giác chờ đợi khó chịu vận hành cho người sử dụng  Nhược điểm: o chưa có kinh nghiệm iOS nên nhiều thời gian để làm quen tiếp cận ngơn ngữ lập trình Objective-C tiếp cận với điều khiển cho thiết bị iOS nên chưa thể hoàn thiện phiên dành riêng cho máy tính bảng iPad Hướng phát triển - Như nêu phần khuyết điểm đề tài thời gian tới cố gắng xây dựng ứng dụng iPad - Đồng thời sâu nghiên cứu kỹ ngơn ngữ lập trình Objective-C để nắm vững kiến thức ngơn ngữ lập trình 79 DANH MỤC TÀI LIỆU THAM KHẢO Danh mục tài liệu tham khảo MARK DALRYMPLE & SCOTT KNASTER: ―Learn Objective-C on the Mac, Springer-Verlag New York,2009 ―The Objective-C 2.0 Programming Language‖ – Apple Inc – 2009 I N PIP R : ―Learn Xcode Tools for Mac OS X and iPhone evelopment‖, Springer-Verlag New York,2009 Danh mục website tham khảo Objective-C Beginner’s Guide : http://www.otierney.net/objective-c.html http://en.wikipedia.org/wiki/Objective-C Iphone source code library: http://www.theiphonedev.com/SourceCode/tabid/143/Default.aspx Khóa học mùa đơng 2010 đại học Stanford Mỹ : http://www.stanford.edu/class/cs193p/cgi-bin/drupal/downloads-2010-winter Diễn đàn lập trình iphone : http://www.iphonedevsdk.com/forum/ 80 Diễn đàn hướng dẫn sử dụng control iphonesdk : http://www.iphonesdkarticles.com/ Bài viết tổng quan mơ hình MVC cho iOS: http://developer.apple.com/library/ios/#documentation/general/conceptual/CocoaEn cyclopedia/Model-View-Controller/Model-View-Controller.html Bài viết vòng đời ứng dụng iOS: http://www.codeproject.com/Articles/121681/Application-s-Life-Cycle-in-iOS4 Bài viết dịch vụ web http://foo.vn/gioi-thieu-ve-web-service-p1776.html Bài viết SON: http://goccongnghe.net/post/2011/10/03/JSON.aspx http://www.json.org/json-vi.htmls 81 ... chọn đề tài cứu môi trường phát triển ứng dụng cho thiết bị di động xây dựng ứng dụng đọc tin tức trực tuyến hệ điều hành iOS có kết hợp xây dựng hệ thống webservice  Mục tiêu đề tài Như tên... 30 Hình 6: Vòng đời ứng dụng iOS (1) 32 Hình 7: Vòng đời ứng dụng iOS (2) 33 Hình 8: vòng đời ứng dụng iOS (3) 34 Hình 9: Vòng đời ứng dụng iOS (4) 35 Hình... phát triển ứng dụng di động có, tìm ưu, nhược điểm loại công nghệ  Nghiên cứu hệ thống webservice, công nghệ xây dựng webservice phổ biến  Lựa chọn công nghệ xây dựng webservice cho ứng dụng di

Ngày đăng: 03/10/2018, 22:56

Từ khóa liên quan

Mục lục

  • LỜI MỞ ĐẦU

  • MỤC LỤC

  • MỤC LỤC HÌNH ẢNH

  • Chương 1: Sơ lược về thiết bị di động và ứng dụng di động

    • 1.1 Sơ lược về thiết bị di động

    • 1.2 Hệ điều hành di động

    • 1.3 Ứng dụng di động

    • 1.4 Phân loại ứng dụng di động

    • Chương 2: Tổng quan về hệ điều hành iOS

      • 2.1 Tổng quan về hệ điều hành iOS

      • 2.2 Các phiên bản của hệ điều hành iOS

      • 2.3 Các thiết bị di động sử dụng nền tảng iOS

      • Chương 3: Môi trường lập trình ứng dụng iOS

        • 3.1 Bộ công cụ lập trình Xcode

          • 3.1.1 Giới thiệu

          • 3.1.2 Giao diện làm việc của Xcode

          • 3.2 Ngôn ngữ lập trình Objective-C

            • 3.2.1 Lịch sử ra đời và phát triển

            • 3.2.2 Đặc điểm cơ bản

            • 3.3 Tổng quan về lập trình iOS

              • 3.3.1 Hỗ trợ đa nhiệm (multi – threading)

              • 3.3.2 Một ứng dụng chỉ có một cửa sổ

              • 3.3.3 Hạn chế trong việc truy cập

              • 3.3.4 Hạn chế về thời gian phản hồi của hệ thống

              • 3.3.5 Hạn chế về kích thước màn hình

              • 3.3.6 Hạn chế về tài nguyên hệ thống

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

Tài liệu liên quan