ĐồÁn Lập Trình Android (RSS) - Ứng Dụng Đọc Báo Online TRƯỜNG ĐẠI HỌC VINH 005.1 KHOA CÔNG NGHỆ THÔNG TIN CHU HOÀNG ANH ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Lập Trình Android (RSS) - Ứng Dụng Đọc Báo Online Nghệ An, tháng GVHD: Trương Trọng Cần năm 2014 SVTH:Chu Hoàng Anh Trang ĐồÁn Lập Trình Android (RSS) - Ứng Dụng Đọc Báo Online LỜI CÁM ƠN Sinh viên CNTT ngày phải không ngừng học hỏi, cập nhật biết ứng dụng kiến thức học vào thực tiễn sống Đợt thực tập sở bước sâu vào tìm hiểu lĩnh vực công nghệ thông tin, sở kiến thức học năm học vừa qua Để hoàn thành đợt thực tập sở này, cố gắng nỗ lực thân thành viên nhóm tận tình giúp đỡ giảng dạy Thầy, Cô giáo khoa Công nghệ thông tin Trường Đại học Vinh Do thời gian trình độ có hạn nên chắn khơng tránh khỏi sai lầm, thiếu sót Kính mong đón nhận, ý kiến đóng góp Thầy Cơ bạn Chúng em xin chân thành cảm ơn Thầy giáo ThS.Trƣơng Trọng Cầnđã hướng dẫn tận tình giúp đỡ chúng em trình làm đề tài Xin kính chúc thầy giáoThS Trƣơng Trọng Cầncùng Thầy, Cô giáosức khỏe, thành công tiếp tục đạt nhiều thắng lợi nghiên cứu khoa học nghiệp trồngngười GVHD: Trương Trọng Cần SVTH:Chu Hoàng Anh Trang ĐồÁn Lập Trình Android (RSS) - Ứng Dụng Đọc Báo Online MỤC LỤC LỜI CÁM ƠN Error! Bookmark not defined CHƢƠNG I: MỞ ĐẦU 1.1 Giới thiệu chung Android 1.2 Lý chọn đề tài CHƢƠNG II: TÌM HIỂU VỀ ANDROID 2.1 Lịch sử Android 2.2 Delving với máy ảo Dalvik 2.3 Kiến trúc Android 2.3.1 Tầng ứng dụng 2.3.2 Application framework 10 2.3.3 Library 12 2.3.4 Android Runtime 12 2.3.5 Linux kernel 13 2.4 Android Emulator 13 2.5 Hƣớng dẫn cài đặt Android với Eclipse 13 2.6 2.5.1 Download Android SDK 14 2.5.2 Tích hợp Android SDK vào Eclipse 15 2.5.3 Android Virtual Device (Emulator) 16 2.5.4 Một số chức cần biết lập trình Android với Eclipse 18 2.5.5 Một số thủ thuật Android Eclipse 19 Các thành phần Android Project 19 2.6.1 AndroidManifest.xml 19 2.6.2 File R.java 20 2.6.3 Chu kì ứng dụng Android 23 2.6.4 Chu kỳ sống thành phần 23 GVHD: Trương Trọng Cần SVTH:Chu Hồng Anh Trang ĐồÁn Lập Trình Android (RSS) - Ứng Dụng Đọc Báo Online 2.6.5 Activity Stack 23 2.6.6 Các trạng thái chu kỳ sống 24 2.6.7 Chu kỳ sống ứng dụng 25 2.6.8 Các kiện chu kỳ sống ứng dụng 26 2.6.9 Thời gian sống ứng dụng 26 2.6.10 Thời gian hiển thị Activity 26 2.6.11 Các phương thức chu kỳ sống 26 2.7 Các thành phần giao diện Android 28 2.7.1 View 28 2.7.2 ViewGroup 28 2.7.3 LinearLayout 29 2.7.4 FrameLayout 29 2.7.5 AbsoluteLayout 30 2.7.6 RetaliveLayout 30 2.7.7 TableLayout 31 2.7.8 Button 31 2.7.9 ImageButton 32 2.7.10 ImageView 33 2.7.11 ListView 33 2.7.12 TextView 34 2.7.13 EditText 35 2.7.14 CheckBox 35 2.7.15 MenuOptions 35 2.7.16 ContextMenu 37 2.7.17 Quick Search Box 38 2.7.18 Activity & Intend 39 2.8 Content Provider URI 42 2.9 Background Service 43 2.10 Telephony 46 GVHD: Trương Trọng Cần SVTH:Chu Hoàng Anh Trang ĐồÁn Lập Trình Android (RSS) - Ứng Dụng Đọc Báo Online 2.11 Sqlite 46 2.12 Android & Websevice 48 2.12.1 Khái niệm Web service SOAP 48 2.12.2 Giới thiệu XStream 48 2.12.3 Thao tác với web service Android 50 CHƢƠNG III: TÌM HIỂU KỸ THUẬT LẬP TRÌNH TRÊN ANDROIND CHO ỨNG DỤNG LẤY TIN TỰ ĐỘNG TRÊN MỘT SỐ TRANG BÁO CÓ CHUẨN RSS 53 3.1 Giới thiệu cấu trúc định dạng tệp tin RSS (Really Simple Syndication) 53 3.2 Những điểm mạnh RSS 53 3.3 Các đối tƣợng làm việc với XML Android 54 3.3.1 XML(Extensible Markup Language) Android 54 3.3.2 Các trình phân tích XML 55 3.3.3 Trình đọc tin Android Error! Bookmark not defined 3.4 Trình đọc tin Android (Ứng ụng Đọc Báo Online) 54 3.4.1 Áp dụng trình phân tích kéo 54 3.4.2 Tạo menu 56 3.4.3 Kết nối để l y tin 57 3.4.4 S dụng lớp RSSListAdapter 57 3.4.5 Giao diện 59 CHƢƠNG IV: PHÂN TÍCH VÀ THIẾT KẾ ỨNG DỤNG LẤY TIN TỰ ĐỘNG TRÊN MỘT SỐ TRANG CÔNG BỐ TIN CÓ CHUẨN RSS 62 4.1 Phân tích tốn 62 4.2 Các biểu đồ hệ thống 63 4.2.1 Chức Actor 63 4.2.2 Biểu đồ Usercase tổng quát 63 4.3 Phân tích chức 63 4.3.1.Demo hình khởi động 64 4.3.2 Demo Màn Hình Chính 64 4.3.3 Demo Màn Hình Chi Tiết 65 GVHD: Trương Trọng Cần SVTH:Chu Hồng Anh Trang ĐồÁn Lập Trình Android (RSS) - Ứng Dụng Đọc Báo Online 4.3.4 Các Chức Năng 67 KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN CỦA ĐỀ TÀI 68 Kết luận 68 Hƣớng phát triển 68 TÀI LIỆU THAM KHẢO 70 GVHD: Trương Trọng Cần SVTH:Chu Hoàng Anh Trang ĐồÁn Lập Trình Android (RSS) - Ứng Dụng Đọc Báo Online CHƢƠNG I: MỞ ĐẦU 1.1 Giới thiệu chung Android Android hệ điều hành điện thoại di động mở nguồn mở miễn phí Google phát triển dựa tảng Linux Bất kỳ hãng sản xuất phần cứng tự sử dụng hệ điều hành Android cho thiếtbị mình, miễn thiết bị đáp ứng tiêu chuẩn Google đặt (có cảm ứngchạm, GPS, 3G Các nhà sản xuất tự thay đổi phiên Android máy cách tự mà khơng cần phải xin phép hay trả khoản phí nhưngphải đảm bảo tính tương thích ngược (backward compatibility) phiên chế riêng Android tảng cho thiết bị di động bao gồm hệ điều hành, midware số ứng dụng chủ đạo Bộ công cụ Android SDK cung cấp công cụ thư viên hàm API cần thiết để phát triển ứng dụng cho tảng Android sử dụng ngơn ngữ lập trình java Những tính mà tảng Android hổ trợ: Application framework: Cho phép tái sử dụng thay thành phần sẳn có Android Dalvik virtual macine: Máy ảo java tối ưu hóa cho thiết bị di động Intergrated browser: Trình duyệt web tích hợp xây dựng dựa WebKIT engine Optimized graphics: Hổ trợ thư viện 2D 3D dự vào đặc tả OpenGL ES 1.0 SQLite: DBMS dùng để lưu trữ liệu có cấu trúc Hổ trở định dạng media phổ biến như: MPEG4, H.264, MP3, AAC, ARM, JPG, PNG, GIF Hổ trợ thoại tảng GSM (Phụ thuộc vài phần cứng thiết bị) Bluetooth, EDGE, 3G WiFi (Phụ thuộc vài phần cứng thiết bị) Camera, GPS, la bàn cảm biến (Phụ thuộc vài phần cứng thiết bị) GVHD: Trương Trọng Cần SVTH:Chu Hoàng Anh Trang ĐồÁn Lập Trình Android (RSS) - Ứng Dụng Đọc Báo Online Bộ công cụ phát triển ứng dụng mạnh mẽ Ở chương sau đề cập sâu vấn đề ANDROID ví dụ như: Lịch sử hình thành, cấu trúc … 1.2 Lý chọn đề tài Gần điện thoại cầm tay thông minh trở thành vật “cần phải có” sống ngày giới làm việc “trí thức” Viết phần mềm tiện ích nâng cao giá trị sử dụng cho chúng trở nên trào lưu cho công ty phát triển phần mềm, giới lập trình viên chun nghiệp khơng chun Đặc biệt ứng dụng cho máy chạy hệ điều hành Android Sau trình tìm hiểu hệ điều hành Android nhóm chúng tơi nhận thấy Android phát triển chương trình giúp người dùng đọc tin tức cách có hiệu chất lượng Xuất phát từ nhận định nhóm sẽxây dựng ứng dụng đọc tin tức Hy vọng đem tới ứng dụng thuận tiện,hữu íchcho mục đích đọc tin hàng ngày Nội dung nhóm sẻ trình bày Project lần Chương I: Mở đầu Chương II: Giới thiệu Android Chương III: Tìm hiểu kỹ thuật lập trình Android cho ứng dụng lấy tin tự động số trang báo có chuẩn RSS Chương IV: Phân tích ứng dụng Kết luận hướng phát triển đề tài GVHD: Trương Trọng Cần SVTH:Chu Hồng Anh Trang ĐồÁn Lập Trình Android (RSS) - Ứng Dụng Đọc Báo Online CHƢƠNG II: TÌM HIỂU VỀ ANDROID 2.1 Lịch sử Android Ban đầu, Android hệ điều hành cho thiết bị cầm tay dựa lõi Linux công ty Android Inc (California, Mỹ) thiết kế Cơng ty sau Google mua lại vào năm 2005 bắt đầu xây dựng Android Platform Các thành viên chủ chốt Android Inc gồm có: Andy Rubin, Rich Miner, Nick Sears, and Chris White Hình 2-1 Android timeline Và sau tiếp, vào cuối năm 2007, thuộc Liên minh Thiết bị Cầm tay Mã Nguồn mở (Open Handset Alliance) gồm thành viên bật ngành viễn thông thiết bị cầm tay như:Texas Instruments, Broadcom Corporation, Google, HTC, Intel, LG, MarvellTechnology Group, Motorola, Nvidia, Qualcomm, Samsung Electronics, SprintNextel, T-Mobile, ARM Holdings, Atheros Communications, Asustek Computer Inc,Garmin Ltd, Softbank, Sony Ericsson, Toshiba Corp, and Vodafone Group,… Mục tiêu Liên minh nhanh chóng đổi để đáp ứng tốt cho nhu cầu người tiêu dùng kết tảng Android Android thiết kế để phục vụ nhu cầu nhà sản xuất thiết, nhà khai thác lập trình viên thiết bị cầm tay GVHD: Trương Trọng Cần SVTH:Chu Hồng Anh Trang ĐồÁn Lập Trình Android (RSS) - Ứng Dụng Đọc Báo Online Phiên SDK lần phát hành vào tháng 11 năm 2007, hãng T-Mobile công bố điện thoại Android T-Mobile G1, smartphone dựa tảng Android Một vài ngày sau đó, Google lại tiếp tục công bố mắt phiên Android SDK release Candidate 1.0 Trong tháng 10 năm 2008, Google cấp giấy phép mã nguồn mở cho Android Platform Khi Android phát hành số mục tiêu kiến trúc cho phép ứng dụng tương tác với sử dụng lại thành phần từ ứng dụng khác Việc tái sử dụng không áp dụng cho cho dịch vụ mà cịn áp dụng cho thành phần liệu giao diện người dùng Vào cuối năm 2008, Google cho phát hành thiết bị cầm tay gọi Android Dev Phone chạy ứng dụng Android mà không bị ràng buộc vào nhà cung cấp mạng điện thoại di động Mục tiêu thiết bị cho phép nhà phát triển thực thí nghiệm thiết bị thực chạy hệ điều hành Android mà ký hợp đồng Vào khoảng thời gian Google cho phát hành phiên vản vá lỗi 1.1 hệ điều hành Ở hai phiên 1.0 1.1 Android chưa hỗ trợ soft-keyboard mà đòi hỏi thiết bị phải sử dụng bàn phím vật lý Android cố định vấn đề cách phát hành SDK 1.5 vào tháng Tư năm 2009, với số tính khác Chẳng hạn nâng cao khả ghi âm truyền thông, vật dụng, live folder 2.2 Delving với máy ảo Dalvik Dalvik máy ảo giúp ứng dụng java chạy thiết bị động Android Nó chạy ứng dụng chuyển đổi thành file thực thi Dalvik (dex) Định dạng phù hợp cho hệ thống mà thường bị hạn chế nhớ tốc độ xử lý Dalvik thiết kế viết Dan Bornstein, người đặt tên cho sau đến thăm ngơi làng đánh cá nhỏ có tên Dalvík đảo Eyjafjưrður, nơi mà số tổ tiên ơng sinh sống Từ góc nhìn nhà phát triển, Dalvik trông giống máy ảo Java (Java Virtual Machine) thực tế hồn tồn khác Khi nhà phát triển viết ứng dụng dành cho Android, thực đoạn mã môi trường Java Sau đó, biên dịch sang bytecode Java, nhiên để thực thi ứng dụng Android nhà phát triển phải thực thi cơng cụ có tên dx Đây công cụ dùng để chuyển đổi bytecode sang dạng gọi dex bytecode "Dex" từ viết tắt "Dalvik executable" đóng vai trị chế ảo thực thi ứng dụng Android 2.3 Kiến trúc Android Mơ hình sau thể cách tổng qt thành phần hệ điều hành Android Mỗi phần đặc tả cách chi tiết GVHD: Trương Trọng Cần SVTH:Chu Hoàng Anh Trang 10 ĐồÁn Lập Trình Android (RSS) - Ứng Dụng Đọc Báo Online trình phân tích kéo, thật dễ dàng tiến hành hầu hết xử lý từ đầu cho phép bạn sớm tạm dừng việc đọc tài liệu XML, bạn biết mã trình khơng quan tâm đến phần cịn lại tài liệu Điều hữu ích, đặc biệt bạn cần phần nhỏ tài liệu truy cập Bạn giảm đáng kể thời gian phân tích cách dừng việc phân tích sớm tốt Hơn nữa, kiểu tối ưu hóa đặc biệt quan trọng thiết bị di động nơi tốc độ kết nối chậm Trình phân tích kéo có vài ưu điểm hiệu ưu điểm sử dụng dễ dàng Cũng sử dụng để viết XML 3.4.2 ạo men publicboolean onCreateOptionsMenu(Menu menu) { super.onCreateOptionsMenu(menu); menu.add(0, 0, 0, "VNExpress-Van hoa") setOnMenuItemClickListener(new TaoMenu("http://vnexpress.net/rss/gl/van-hoa.rss")); menu.add(0, 0, 0, "VNExpress-Kinh te") setOnMenuItemClickListener(new TaoMenu("http://vnexpress.net/rss/gl/kinh-doanh.rss")); menu.add(0, 0, 0, "VNExpress-Xa hoi") setOnMenuItemClickListener(new TaoMenu("http://vnexpress.net/rss/gl/xa-hoi.rss")); menu.add(0, 0, 0, "VNExpress-The thao") setOnMenuItemClickListener(new TaoMenu("http://vnexpress.net/rss/gl/the-thao.rss")); menu.add(0, 0, 0, "Reset") setOnMenuItemClickListener(new MenuItem.OnMenuItemClickListener() { publicboolean onMenuItemClick(MenuItem item) { resetUI(); returntrue; } }); returntrue; } privateclass TaoMenu implements MenuItem.OnMenuItemClickListener { private CharSequence Url; TaoMenu(CharSequence url) { Url = url; } GVHD: Trương Trọng Cần SVTH:Chu Hoàng Anh Trang 57 ĐồÁn Lập Trình Android (RSS) - Ứng Dụng Đọc Báo Online publicboolean onMenuItemClick(MenuItem item) { UrlText.setText(Url); UrlText.requestFocus(); returntrue; } } Ở code tạo menu để giúp cho người sử dụng chuyển sang chuyên mục khác cách chọn vào chuyên mục có menu Khi người dùng Click vào chuyên mục tương ứng tất tiêu đề tin đoạn tóm tắt tin(khoảng 100 kí tự) chun mục hiển thị lên Giúp người sử dụng thuận tiện việc lựa chọn chuyên mục tin mới(sẽ gõ lại địa cần truy cập) 3.4.3 ết nối ể tin ề publicclass RssHandler extends DefaultHandler { private RssItem item; private Listitems = new ArrayList(); private StringBuffer sBuffer = new StringBuffer(); privatebooleanstarted = false; publicstatic String ITEM = "item"; publicstatic String TITLE = "title"; publicstatic String DESCRIPTION = "description"; publicstatic String LINK = "link"; publicstatic String PUBDATE = "pubDate"; @Override publicvoid characters(char[] ch, int start, int length) throws SAXException { super.characters(ch, start, length); if (started&& (sBuffer != null)) { sBuffer.append(ch, start, length); } } @Override publicvoid startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException { super.startElement(uri, localName, qName, attributes); if (localName.equalsIgnoreCase(ITEM)) { started = true; item = new RssItem(); } } GVHD: Trương Trọng Cần SVTH:Chu Hoàng Anh Trang 58 ĐồÁn Lập Trình Android (RSS) - Ứng Dụng Đọc Báo Online @Override publicvoid endElement(String uri, String localName, String qName) throws SAXException { super.endElement(uri, localName, qName); if (localName.equalsIgnoreCase(ITEM)) { item.setImage(getImage(item.getDescription())); items.add(item); started = false; Log.d("Title", item.getTitle()); Log.d("Description", item.getDescription()); Log.d("Link", item.getLink()); Log.d("Date", item.getPubDate()); Log.d("Image", item.getImage()); } elseif (started) { if (localName.equalsIgnoreCase(TITLE)) { item.setTitle(sBuffer.toString().trim()); } elseif (localName.equalsIgnoreCase(DESCRIPTION)) { item.setDescription(sBuffer.toString().trim()); } elseif (localName.equalsIgnoreCase(LINK)) { item.setLink(sBuffer.toString().trim()); } elseif (localName.equalsIgnoreCase(PUBDATE)) { item.setPubDate(sBuffer.toString().trim()); } sBuffer = new StringBuffer(); } } private String getImage(String description) { int a = description.indexOf("src="); int start = description.indexOf("\"", a); int end = description.indexOf("\"", start + 1); Log.d("a", a + ""); Log.d("start", start + ""); Log.d("end", end + ""); String image = ""; if ((start != -1) && (end != -1)) { image = description.substring(start + 1, end); if(item.getLink().contains("http://ngoisao.net")){ image = "http://ngoisao.net" + image; } } Log.d("Image", image); return image; } GVHD: Trương Trọng Cần SVTH:Chu Hoàng Anh Trang 59 ĐồÁn Lập Trình Android (RSS) - Ứng Dụng Đọc Báo Online public List getItems() { returnthis.items; } } Đoạn code dùng để kết nối đến URL tương ứng để lấy tin 3.4.4 dụng ớpRSSListAdapter publicclass Variables { publicstaticfinal String[] PAPERS = {"Vnexpress", "24h", "Dân trí", "Vietnamnet", "Yahoo", "Tiin", "Ngơi sao", "Việt giải trí", "Haivl", "Kênh 14"}; publicstaticfinalint[] ICONS = {R.drawable.vnexpress, R.drawable.hn24h, R.drawable.dantri, R.drawable.vietnamnet, R.drawable.yahoo, R.drawable.tiin, R.drawable.ngoisao, R.drawable.vietgiaitri, R.drawable.haivl, R.drawable.kenh14}; //Vnexpress publicstaticfinal String[] VNEXPRESS_CATEGORIES = {"Trang chủ", "Xã hội", "Thể giới", "Kinh doanh", "Giải trí", "Thế thao", "Pháp luật", "Gia đình", "Khoa học", "Số hóa", "Ơ tơ - Xe may", "Bạn đọc viết", "Tâm sự", "Cười"}; publicstaticfinal String[] VNEXPRESS_LINKS = {"http://vnexpress.net/rss/gl/trang-chu.rss", "http://vnexpress.net/rss/gl/xa-hoi.rss", "http://vnexpress.net/rss/gl/the-gioi.rss", "http://vnexpress.net/rss/gl/kinh-doanh.rss", "http://giaitri.vnexpress.net/rss/tin-moi-nhat.rss", "http://thethao.vnexpress.net/rss/tin-moi-nhat.rss", "http://vnexpress.net/rss/gl/phap-luat.rss", "http://giadinh.vnexpress.net/rss/tin-moi-nhat.rss", "http://vnexpress.net/rss/gl/khoa-hoc.rss", "http://sohoa.vnexpress.net/rss/trang-chu", "http://vnexpress.net/rss/gl/oto-xe-may.rss", "http://vnexpress.net/rss/gl/ban-doc-viet.rss", "http://vnexpress.net/rss/gl/ban-doc-viet-tam-su.rss", "http://vnexpress.net/rss/gl/cuoi.rss"}; GVHD: Trương Trọng Cần SVTH:Chu Hoàng Anh Trang 60 ĐồÁn Lập Trình Android (RSS) - Ứng Dụng Đọc Báo Online publicstaticfinal String[][] CATEGORIES = {VNEXPRESS_CATEGORIES, HN24H_CATEGORIES, DANTRI_CATEGORIES, VIETNAMNET_CATEGORIES, YAHOO_CATEGORIES, TIIN_CATEGORIES, NGOISAO_CATEGORIES, VIETGIAITRI_CATEGORIES, HAIVL_CATEGORIES, KENH14_CATEGORIES}; publicstaticfinal String[][] LINKS = {VNEXPRESS_LINKS, HN24H_LINKS, DANTRI_LINKS, VIETNAMNET_LINKS, YAHOO_LINKS, TIIN_LINKS, NGOISAO_LINKS, VIETGIAITRI_LINKS, HAIVL_LINKS, KENH14_LINKS}; publicstaticfinal publicstaticfinal publicstaticfinal publicstaticfinal String String String String paper = "paper"; category = "category"; key = "key"; position = "position"; publicstatic HashMapMAP = new HashMap(); } Đây lớp mở rộng lớp import android.widget.ArrayAdapter Lớp đóng vai trị cầu nối liệu để hiển thị thong tin cho người sử dụng Ngồi ra, cịn cung cấp quyền truy cập vào mục liệu Nó đảm nhiệm việc hiển thị cách đầy đủ thong tin tin tức cho người sử dụng đọc 3.4.5 i o diện Các tin hiển thị ListView Theo thứ tụ tin cập nhật (mới cũ dưới) CHƢƠNG IV: PHÂN TÍCH VÀ THIẾT KẾ ỨNG DỤNG LẤY TIN TỰ ĐỘNG TRÊN MỘT SỐ TRANG CƠNG BỐ TIN CĨ CHUẨN RSS GVHD: Trương Trọng Cần SVTH:Chu Hồng Anh Trang 62 ĐồÁn Lập Trình Android (RSS) - Ứng Dụng Đọc Báo Online 4.1 Phân tích tốn Với phát triển cơng nghệ thơng tin lĩnh vực lập trình thoại di động chạy hệ điều hành Android,IOS … việc phát triển ứng dụng chạy hệ điều hành điều cần thiết Sau trình tìm hiểu hệ điều hành Android nhóm chúng em nhận thấy Android cịn thiếu thốn chương trình giúp người dùng đọc tin tức cách có hiệu chất lượng Xuất phát từ nhận định nhóm chúng em sẽxây dựng ứng dụng đọc tin tức, Hy vọng đem tới ứng dụng thuận tiện,hữu íchcho mục đích đọc tin hàng ngày Một số chức nỗi trội : 3.4.5.1 Có cách đọc tin tức : Xem tin viết giúp bạn đọc tin theo cách bình thường Xem tin hình ảnh giúp bạn trải nghiệm hình ảnh báo chí, thơng tin cách thuận tiện, ấn tượng thẩm mỹ (Mục tiêu nhóm phát triển sau ) 3.4.5.2 Có chế độ đọc tin sau Online: chức mặc định ứng dụng, bạn xem tin tức có kết nối internet (qua 3G Wifi) Xem tin Offline: tức đọc tin bạn vùng khơng có kết nối internet (khơng có 3G, Wifi) Chức đặc biệt hữu dụng bạn chơi xa, đễn vùng khơng có sóng, bạn lên máy bay, đơn giả có Wifi lấy liệu, dùng để đọc khơng có Wifi (đỡ tốn tiền mạng 3G J !) Mặc dù ứng dụng lấy tin RSS Android cung cấp số chức gặp nhiều hạn chế, đặc biệt thiếu chức : Lưu tập tin , quản lý Group,Xử lý liệu … Kết : Bài toán đặt cho :Xây dựng chương trình lấy tin tự động từ tập tin RSS, xây dựng chương trình thân thiện với người dùng, có nhiều chức trội so với đọc tin tức thông thường 4.2 Các biểu đồ hệ thống 4.2.1 Chức Actor STT Tên Actor User(Người sử dụng) GVHD: Trương Trọng Cần Ý nghĩa/ Ghi Người dùng chương trình sử SVTH:Chu Hồng Anh Trang 63 ĐồÁn Lập Trình Android (RSS) - Ứng Dụng Đọc Báo Online dụng tất đọc tin … 4.2.2 Biể Usercase tổng qt Mơ hình usercase thể cho số lượng chức hệ thống mà ngườidùng tương tác trực tiếp Hình 3.1 : Biểu đồ Usercase hệ thống 4.3 Phân tích chức 4.3.1 Demo Màn Hình Khởi ộng Để hình khởi động cho sinh động ta thêm vào hình khởi động GVHD: Trương Trọng Cần SVTH:Chu Hoàng Anh Trang 64 ĐồÁn Lập Trình Android (RSS) - Ứng Dụng Đọc Báo Online 4.3.2 Demo n hình Màn hình giúp cho bạn tiếp cận với viết nhất(ở tiêu đề tin đoạn tin ngắn khoảng 100 chữ kể khoảng trắng dấu”.,”) chuyện mục bạn chọn nhanh dễ dàng, tận dụng khía cạnh cảm ứng android Bên cạnh bạn chọn chuyên mục khác để lấy tin chuyên mục đọc cách chọn vào menu tên chuyên mục tương ứng click vào Nút Download để lấy tin chuyên mục GVHD: Trương Trọng Cần SVTH:Chu Hồng Anh Trang 65 ĐồÁn Lập Trình Android (RSS) - Ứng Dụng Đọc Báo Online ình : Gi iện àn hình ch nh 4.3.3 Deno Màn Hình tin chi tiết Trang tin chi tiết có giao diện sau: GVHD: Trương Trọng Cần SVTH:Chu Hoàng Anh Trang 66 ĐồÁn Lập Trình Android (RSS) - Ứng Dụng Đọc Báo Online GVHD: Trương Trọng Cần SVTH:Chu Hoàng Anh Trang 67 ĐồÁn Lập Trình Android (RSS) - Ứng Dụng Đọc Báo Online Ở người dùng đọc đầy đủ tin tin tiêu đề mà chọn Mặc định chương trình load tất tin chuyên mục mà trang RSS có Mỗi lần di chuyển đc tin 4.3.4 Các Chức Phần mềm đọc tin RSS chúng em chủ yếu lấy tin số chuyên mục trang VnExpress.vn, 24h.com.vn, kenh14.vn, DanTri.com.vn, Các chức phần mềm: Hỗ trợ đọc tin có chuẩn RSS số trang báo, hiển thị tiêu đề tin đoạn tin tức Quản lí tin tức theo chuyên mục Thường xuyên bổ sung tin tức có sẵn chuyên mục GVHD: Trương Trọng Cần SVTH:Chu Hồng Anh Trang 68 ĐồÁn Lập Trình Android (RSS) - Ứng Dụng Đọc Báo Online KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN CỦA ĐỀ TÀI Kết luận Sau thực xong project em nắm bắt qui trình làm dự án phần mềm mobile nói chung đồng thời hiểu thêm nhiều kiến thức Android thành phần Android Project tệp XML Android… Kết đạt đề tài Tìm hiểu thành phần Android Project Tìm hiểu RSS Andorid Đã xây dựng trình đọc RSS trang báo có hỗ trợ RSS Chương trình tích hợp trang báo tin tức tiếng thông dụng Vnexpress, dân trí, 24h, kenh14, Giao diện việt dễ dàng sử dụng, chiếm dung lưng Ram Tích hợp nhiều trang báo, phù hợp với người làm hay đọc tin tức, đỡ cơng tìm trang web Không chứa quảng cáo gây khó chịu ch người sử dụng Phù hợp với hầu hết điện thại chạy HĐH android 2.2 trở lên Một số hạn chế đề tài Chưa xây đựng dược số chức chương trình lấy tin tức :lưu tin người dùng muốn đọc chế độ offline Chưa xây dựng lịch sử đọc tin Chưa thêm trang muốn Chưa thêm tính lấy ý kiến người dùng Hƣớng phát triển Duyệt tin Online/Offline Xem tin tức viết, tin tức hình ảnh Xem ảnh theo Album Lưu ảnh vào thẻ nhớ, đặt làm hình GVHD: Trương Trọng Cần SVTH:Chu Hoàng Anh Trang 69 ĐồÁn Lập Trình Android (RSS) - Ứng Dụng Đọc Báo Online Và chức nhỏ khác Có chức thêm trang web muốn Có lịch sử đọc tin tức Có chức giảm độ tương phản hình để đọc khơng bị mỏi mắt GVHD: Trương Trọng Cần SVTH:Chu Hoàng Anh Trang 70 ĐồÁn Lập Trình Android (RSS) - Ứng Dụng Đọc Báo Online TÀI LIỆU THAM KHẢO [1] Copyright © 2008 by Ed Burnette Hello, Android (Introducing Google’s Mobile Development Platform) [2]www.vietnamandroid.com [3]www.ibm.com.vn [4]www.android.vn [5]www.clbth.ntu.edu.vn – Câu lạc tin học đại học Nha Trang [6]www.itcuties.com [7] Một số sachs tự sưu tầm mạng GVHD: Trương Trọng Cần SVTH:Chu Hoàng Anh Trang 71 ... SVTH:Chu Hồng Anh Trang 22 ĐồÁn Lập Trình Android (RSS) - Ứng Dụng Đọc Báo Online 2.6.3 Chu kì ứng dụng Android Một tiến trình Linux gói gọn ứng dụng Android tạo cho ứng dụng codes cần run chạy khi:... Hoàng Anh Trang 10 ĐồÁn Lập Trình Android (RSS) - Ứng Dụng Đọc Báo Online Hình 2-2 C u trúc stack hệ thống Android 2.3.1 Tầng ứng dụng Android tích hợp sẵn số ứng dụng cần thiết như: contacts,... ĐồÁn Lập Trình Android (RSS) - Ứng Dụng Đọc Báo Online Service vận hành theo lập trình việc sử dụng Interface mà định nghĩa Các người dùng thiết lập đường truyền tới đối tượng Service sử dụng