Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 11 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
11
Dung lượng
0,95 MB
Nội dung
MỤC LỤC LỜI NÓI ĐẦU .2 CHƯƠNG 1: GIỚI THIỆU CHUNG 3 CHƯƠNG 2: GOOGLE MAP API .11 CHƯƠNG 3: HỆ THỐNG BẢN ĐỒ TRỰC TUYẾN SỬ DỤNG GOOGLE MAP API .32 TỔNG KẾT 47
LỜI NÓI ĐẦU Như chúng ta đã biết bản đồ từ thời xa xưa giúp con người có thể xác định được phương hướng, vị trí chính xác nơi mình muốn đến, cần đến, giúp cho họ có thể hiểu biết đầy đủ về vùng địa lý mà họ tìm hiểu. Ngày nay với sự giúp đỡ của công nghệ thông tin người ta có thể ngồi tại một chỗ và tìm kiếm chính xác đến một vùng nào đó trên thế giới bằng bản đồ trực tuyến.Hiện nay, bản đồ trực tuyến là một trong những lĩnh vực phát triển mạnh mẽ được hầu hết các nơi trên thế giới xây dựng và Việt Nam không nằm ngoài số đó. Trên thế giới google đã xây dựng được một bản đồ trực tuyến của toàn thế giới và cung cấp các API cho người lập trình để có thể tự xây dựng bản đồ trực tuyến ở đất nước mình. Với sự phát triển mạnh mẽ trong lĩnh vực bản đồ các công ty ở Việt Nam như bamboo, địa danh đã xây dựng cơ sở dữ liệu của mình, hiển thị thông tin dựa trên bản đồ của google. Chúng ứng dụng bởi rất nhiều công nghệ khác nhau như .NET, PHP, JSP…Cùng xu hướng đó tôi đã xây dựng một trang web về lĩnh vực bản đồ trực tuyến cho việc hiển thị thông tin gồm thông tin text, hình ảnh và video của tất cả các thủ đô trên thế giới. Ở đây tôi sử dụng công nghệ .NET trên nền Web 2.0 kết hợp với Google Map API.
CHƯƠNG 1: GIỚI THIỆU CHUNG .1.1. Giới thiệu các công nghệ 1.1.1. Bản đồ trực tuyến 1.1.1.1.1 Bản đồ Theo wikipedia Bản đồ là bản vẽ đơn giản miêu tả một không gian, địa điểm và hiển thị những thông số liên quan trực tiếp đến vị trí ấy có liên quan đến khu vực xung quanh. Theo các nhà bản đồ: Bản đồ là sự miêu tả khái quát, thu nhỏ bề mặt trái đất hoặc bề mặt thiên thể khác trên mặt phẳng trong một phép chiếu xác định, nội dung của bản đồ được biểu thị bằng hệ thống ký hiệu quy ước. Bản đồ thường dùng nhất trong địa lý. Theo nghĩa này bản đồ thường có hai chiều mà vẫn biểu diễn một không gian có ba chiều đúng đắn. Môn bản đồ là khoa học và nghệ thuật vẽ bản đồ. 1.1.1.1.2 Bản đồ trực tuyến Theo Trung tâm Thông tin (CIREN thuộc Bộ Tài nguyên - Môi trường) cơ quan cung cấp DV này: Ngoài việc cung cấp thông tin cho người truy cập, hệ bản đồ này còn có ý nghĩa như là cơ sở dữ liệu quan trọng phục vụ hoạt động của các cơ quan Chính phủ, các cơ quan nghiên cứu khoa học và phục vụ việc phổ cập thông tin cộng đồng. DV này của CIREN được thiết lập theo đúng tiêu chuẩn OGC WMS. Do vậy, có thể sử dụng bản đồ trực tuyến VN kết hợp với rất nhiều dịch vụ WMS của các tổ chức và quốc gia trên thế giới. CIREN có hướng dẫn phương pháp kết hợp dịch vụ bản đồ trực tuyến VN với nguồn ảnh vệ tinh của Microsoft Virtual Earth và Yahoo Map. Người sử dụng có thể bổ sung các nguồn dữ liệu của riêng mình trên nền dữ liệu địa lý toàn cầu mà không cần phải có dữ liệu gốc. Đặc biệt, hiện CIREN đang cung cấp một ứng dụng miễn phí là Gaia 3.0 để khai thác dịch vụ WMS. Trong thời gian tới, CIREN cung cấp các đường liên kết tới các dịch vụ WMS và đường link tới các dịch vụ WMS quốc tế.
1.1.2. Công nghệ Web 2.0 Sẽ thật tuyệt với nếu vào một ngày nào đó, chỉ với một chiếc máy tính được cài đặt một hệ điều hành và một trình duyệt web duy nhất mà bạn Google APIs & Location Based Applications -Krishna Achanta krishna.achanta@gmail.com Prerequisites • Eclipse with Android SDK and AVD Manager • Google Apis • Java • XML • Android device[or Emulator] to test Agenda: Google Maps Api for Android For applications using Google MapViews Android Location Package The classes required to access the users location without having to use maps MapView • Adding Google APIs • Obtaining Maps Key • Using MapActivity • Showing current location • Adding Overlay items MapView: Adding Google APIs All you need [not really] http://code.google.com/android/add-ons/googleapis/index.html MapView: Obtaining Maps Key • Generate Certificate • keytool -genkey -v -keystore droid_kids.keystore -alias droid_kids -keyalg RSA -keysize 2048 -validity 10000 • Get Fingerprint of the certificate • • keytool -list -alias droid_kids -keystore droid_kids.keystore Fingerprint is : E0:9D:58:9F:B2:CD:5C:9C:42:8B:60:0F:23:BC:24:11 • Register the fingerprint with Google Maps Service • • http://code.google.com/android/maps-api-signup.html Key is: 0zu3JWra9vK5LxswGR1V4Wh3SztudX-UjgLWLJA MapView: Create Maps Activity • Include Maps library • • Add permissions • • • • Create a MapView layout and add the key • MapView Coding • Layers • Zoom • Center • Overlays • MyLocation Find Location Location Sources LocationManager & Location Providers Criteria LocationListener locationManager.requestLocationUpdates(bestProvider, time, distance , locationListener); Questions OUT OF TIME References - http://developer.android.com/guide/topics/location/index.ht ml - http://code.google.com/android/add-ons/google-apis/ - http://www.anddev.org/index.php - http://itouchmap.com/latlong.html [For finding location coordinates] ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ PHẦN MỀM KHÓA LUẬN TỐT NGHIỆP NGHIÊN CỨU GOOGLE MAP API VÀ XÂY DỰNG ỨNG DỤNG TRÊN ANDROID Giáo viên hướng dẫn: PGS.TS. VŨ THANH NGUYÊN CH. TRẦN ANH DŨNG Sinh viên thực hiện: NGUYỄN MINH TUẤN TRƯƠNG DUY Lớp : CNPM02 Khoá: 02 TP. Hồ Chí Minh, tháng 1 năm 2012 GVHD: PGS.TS. Vũ Thanh Nguyên SVTH: Nguyễn Minh Tuấn CH. Trần Anh Dũng Trương Duy LỜI MỞ ĐẦU Ngày nay với sự phát triển không ngừng của xã hội thì nhu cầu của con người cũng ngày càng tăng, đặc biệt là nhu cầu về việc sử dụng công nghệ hỗ trợ cho cuộc sống hằng ngày. Nắm bắt được nhu cầu đó mà các công ty không ngừng đổi mới, tạo ra nhiều công nghệ hơn. Trong đó ta thấy nổi bật nhất hiện nay đó là công nghệ di động, các ứng dụng trên di động. Từ ý nghĩa trên nhóm đã quyết định nghiên cứu và xây dựng một ứng dụng áp dụng công nghệ đi động để đơn giản hóa việc tìm đường, tra cứu thông tin trên bản đồ. Với ứng dụng này người sử dụng có thể dễ dàng biết được vị trí của mình, cũng như tìm đường đi và địa điểm một cách nhanh chóng và chính xác tại bất kỳ nơi nào. Ứng dụng đặc biệt thích hợp với khách du lịch vì chỉ cần cài đặt ứng dụng trên chiếc điện thoại của mình là có thể sử dụng được. Khóa luận “Nghiên cứu Google Map Api và xây dựng ứng dụng trên Android” bao gồm 8 chương: Chương 1: Giới thiệu: Giới thiệu khái quát về khóa luận và mục đích của khóa luận. Chương 2: Tổng quan hệ điều hành Android. Chương 3: Kiến trúc và thành phần hệ điều hành Android. Chương 4: Google Map API & các dịch vu Google Map trên Anroid. Chương 5: Giới thiệu phần mềm MapPro. Chương 6: Phân tích thiết kế hệ thống. Chương 7: Thiết kế giao diện. Chương 8: Đánh giá kết quả và kết luận. LỜI CẢM ƠN Trong quá trình thực hiện bài khóa luận này, nhóm đã may mắn nhận được sự giúp đỡ rất nhiều từ quý thầy cô. Trước hết, nhóm xin gửi lời tri ân sâu sắc nhất đến quý thầy cô khoa Công nghệ phần mềm, cũng như quý thầy cô của các khoa và bộ môn trường Đại học Công nghệ thông tin - ĐHQG HCM đã nhiệt tình truyền đạt kiến thức và các kinh nghiệm thực tế, đặc biệt là Thầy PGS.TS Vũ Thanh Nguyên và Thầy Trần Anh Dũng, người đã hết sức quan tâm và nhiệt tình hướng dẫn nhóm hoàn thành bài khóa luận này. Cuối cùng, nhóm xin gửi lời chúc sức khỏe và thành công đến quý thầy cô trường Đại học Công nghệ thông tin. Mặc dù nhóm đã rất cố gắng nhưng trong quá trình làm khóa luận sẽ không tránh khỏi những thiếu sót. Rất mong nhận được sự góp ý quý báu của quý thầy cô và bạn bè để khóa luận được hoàn chỉnh hơn. Thành phố Hồ Chí Minh, ngày 31 tháng 12 năm 2011 Nhóm thực hiện Nguyễn Minh Tuấn – Trương Duy GVHD: PGS.TS. Vũ Thanh Nguyên SVTH: Nguyễn Minh Tuấn CH. Trần Anh Dũng Trương Duy NHẬN XÉT (Của giảng viên hướng dẫn) . ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ PHẦN MỀM KHÓA LUẬN TỐT NGHIỆP NGHIÊN CỨU GOOGLE MAP API VÀ XÂY DỰNG ỨNG DỤNG TRÊN ANDROID Giáo viên hướng dẫn: PGS.TS. VŨ THANH NGUYÊN CH. TRẦN ANH DŨNG Sinh viên thực hiện: NGUYỄN MINH TUẤN TRƯƠNG DUY Lớp : CNPM02 Khoá: 02 TP. Hồ Chí Minh, tháng 1 năm 2012 GVHD: PGS.TS. Vũ Thanh Nguyên SVTH: Nguyễn Minh Tuấn CH. Trần Anh Dũng Trương Duy LỜI MỞ ĐẦU Ngày nay với sự phát triển không ngừng của xã hội thì nhu cầu của con người cũng ngày càng tăng, đặc biệt là nhu cầu về việc sử dụng công nghệ hỗ trợ cho cuộc sống hằng ngày. Nắm bắt được nhu cầu đó mà các công ty không ngừng đổi mới, tạo ra nhiều công nghệ hơn. Trong đó ta thấy nổi bật nhất hiện nay đó là công nghệ di động, các ứng dụng trên di động. Từ ý nghĩa trên nhóm đã quyết định nghiên cứu và xây dựng một ứng dụng áp dụng công nghệ đi động để đơn giản hóa việc tìm đường, tra cứu thông tin trên bản đồ. Với ứng dụng này người sử dụng có thể dễ dàng biết được vị trí của mình, cũng như tìm đường đi và địa điểm một cách nhanh chóng và chính xác tại bất kỳ nơi nào. Ứng dụng đặc biệt thích hợp với khách du lịch vì chỉ cần cài đặt ứng dụng trên chiếc điện thoại của mình là có thể sử dụng được. Khóa luận “Nghiên cứu Google Map Api và xây dựng ứng dụng trên Android” bao gồm 8 chương: Chương 1: Giới thiệu: Giới thiệu khái quát về khóa luận và mục đích của khóa luận. Chương 2: Tổng quan hệ điều hành Android. Chương 3: Kiến trúc và thành phần hệ điều hành Android. Chương 4: Google Map API & các dịch vu Google Map trên Anroid. Chương 5: Giới thiệu phần mềm MapPro. Chương 6: Phân tích thiết kế hệ thống. Chương 7: Thiết kế giao diện. Chương 8: Đánh giá kết quả và kết luận. LỜI CẢM ƠN Trong quá trình thực hiện bài khóa luận này, nhóm đã may mắn nhận được sự giúp đỡ rất nhiều từ quý thầy cô. Trước hết, nhóm xin gửi lời tri ân sâu sắc nhất đến quý thầy cô khoa Công nghệ phần mềm, cũng như quý thầy cô của các khoa và bộ môn trường Đại học Công nghệ thông tin - ĐHQG HCM đã nhiệt tình truyền đạt kiến thức và các kinh nghiệm thực tế, đặc biệt là Thầy PGS.TS Vũ Thanh Nguyên và Thầy Trần Anh Dũng, người đã hết sức quan tâm và nhiệt tình hướng dẫn nhóm hoàn thành bài khóa luận này. Cuối cùng, nhóm xin gửi lời chúc sức khỏe và thành công đến quý thầy cô trường Đại học Công nghệ thông tin. Mặc dù nhóm đã rất cố gắng nhưng trong quá trình làm khóa luận sẽ không tránh khỏi những thiếu sót. Rất mong nhận được sự góp ý quý báu của quý thầy cô và bạn bè để khóa luận được hoàn chỉnh hơn. Thành phố Hồ Chí Minh, ngày 31 tháng 12 năm 2011 Nhóm thực hiện Nguyễn Minh Tuấn – Trương Duy GVHD: PGS.TS. Vũ Thanh Nguyên SVTH: Nguyễn Minh Tuấn CH. Trần Anh Dũng Trương Duy NHẬN XÉT (Của giảng viên hướng dẫn) . . . . . . . . . . . Ứng dụng tìm kiếm thông tin bản đồ trên thiết bị Android GVHD: Trần Minh Văn | SVTH: Trần Mạnh Cường 1 BỘ GIÁO DỤC ĐÀO TẠO TRƯỜNG ĐẠI HỌC NHA TRANG KHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO ĐỒ ÁN TỐT NGHIỆP Đề tài: Xây dựng ứng dụng tìm kiếm thông tin bản đồ trên thiết bị Android Giáo viên hướng dẫn: Trần Minh Văn Sinh viên thực hiện: Trần Mạnh Cường MSSV:50130175 Lớp 50TH2 Ứng dụng tìm kiếm thông tin bản đồ trên thiết bị Android GVHD: Trần Minh Văn | SVTH: Trần Mạnh Cường 2 Contents Lời nói đầu 6 Chương I: Giới thiệu 7 I.1 Du lịch Nha Trang 7 I.2 Công nghệ thiết bị di động 8 I.2.1 Di động đi tắt đón đầu trong thế giới công nghệ 8 I.2.2 Thời kỳ “hậu PC” và cơ hội cho các lập trình viên di động 10 I.3 Mục đích thực hiện đề tài 13 Chương II: Hệ điều hành Android 15 II.1 Giới thiệu hệ điều hành Android 15 II.2 Những đặc trưng của hệ điều hành Android: 15 II.3 Các tính năng hỗ trợ sẵn trong hệ điều hành Android 16 II.4 Kiến trúc và các thành phần trong hệ điều hành Android 17 II.4.1 Linux kernel (nhân Linux) 17 II.4.2 Libraries 17 II.4.3 Android runtime: 18 II.4.4 Application framework 2.4.3 Android runtime: 18 II.4.5 Applications: 19 II.5 Các khái niệm cơ bản trong lập trình ứng dụng Android 19 II.5.1 Activity 19 II.5.2 Service 22 II.5.3 Content provider 23 II.5.4 Broadcast Receive 23 II.5.5 View 23 II.5.6. Intent 24 II.6 Các thành phần trong một project ứng dụng Android 25 II.6.1. AndroidManifest.xml 25 II.6.2. File R.java 26 II.6.3 Thư mục src 26 II.6.4 Thư mục rec 26 Chương III: Công nghệ XML và Webservice 27 III.1 Công nghệ XML 27 III.1.1 Lịch sử ra đời chuẩn XML, XML là gì? 27 III.1.2 Cấu trúc của file XML và tài liệu XML 27 Ứng dụng tìm kiếm thông tin bản đồ trên thiết bị Android GVHD: Trần Minh Văn | SVTH: Trần Mạnh Cường 3 III.1.3 Đặc điểm của XML 28 III.1.4 XML và HTML 29 III.1.5 Ngôn ngữ đặt tả cấu trúc 29 III.1.6 Ưu điểm của XML 30 III.2 Webservice 31 III.2.1 Webservice là gì ? 31 III.2.2 Một số đặt điểm cơ bản của webservice 32 III.2.3 Phân loại webservice 32 Chương IV: Google Map và Google Maps API Web Services 34 IV.1 Google Map 34 IV.1.1 Giới thiệu Google Map 34 IV.1.2 Google Maps for Mobile 35 IV.2 Google Maps API Web Services 37 IV.2.1 Giới thiệu Google Maps API Web Services 37 IV.2.2 Sử dụng Google Maps API Web Services 37 IV.3 Google Geocoding API 40 IV.3.1 Mã hóa địa lý là gì? 40 IV.3.2 Giới hạn sử dụng 40 IV.3.3 Geocoding API request 40 IV.3.4 Kết quả mã hóa địa lý 41 IV.3.5 Giải mã địa lý (tìm địa chỉ từ kinh độ-vĩ độ) 47 IV.4 Google Distance Matrix API 50 IV.4.1 Giới hạn sử dụng 50 IV.4.2 Distance Matrix API request 50 IV.4.3 Kết quả từ Distance Matrix API 52 IV.5 Google Direction API 58 IV.5.1 Giới hạn sử dụng 58 IV.5.2 Google Direction request 58 IV.5.3 Kết quả trả về Google Direction 61 Chương V: Cơ sở dữ liệu SQLite 70 V.1 Giới thiệu SQLite 70 V.2 Thiết kế của SQLite 70 V.3 Các đặc tính của SQLite 71 V.4 Sử dụng SQLite 71 Ứng dụng tìm kiếm thông tin bản đồ trên thiết bị Android GVHD: Trần Minh Văn | SVTH: Trần Mạnh Cường 4 V.4.1 Những trường hợp thích hợp sử dụng SQLite 71 V.4.2 Những trường hợp không thích hợp sử dụng SQLite 73 V.5 Các ứng dụng lớn của SQLite 74 Chương VI: Xây dựng ứng dụng 75 VI.1 Phân tích thiết kế dữ liệu 75 VI.1.1 Đặc tả hệ thống 75 VI.1.2 Mô hình thực thể kết hợp 76 VI.1.3 Mô hình vật lý dữ liệu 77 VI.2 Các yêu cầu về chức năng của chương trình 77 VI.3 Các vấn đề trong quá trình xây dựng ứng dụng 78 VI.3.1 Giao diện UI trong lập trình ứng dụng Android 78 VI.3.2 Đăng ký bản đồ Google Map trong ứng dụng 82 VI.3.3 Đánh dấu địa điểm và hiện thông tin trên bản đồ 83 VI.3.4 Sử dụng SQLite trong hệ điều hành Android 84 VI.3.5 Phân tích cú pháp XML 86 VI.3.6 Chạy đa tiến COMPANION eBOOK Shelve in Mobile Computing User level: Beginning–Intermediate BOOKS FOR PROFESSIONALS BY PROFESSIONALS ® Android Quick APIs Reference Onur Cinar Cinar Android Quick APIs Reference Includes Android 5.0 Release Companion eBook Available T he Android Quick APIs Reference is a condensed code and APIs reference for the new Google Android 5.0 SDK. It presents the essential Android APIs in a well-organized format that can be used as a handy reference. You won’t find any technical jargon, bloated samples, drawn out history lessons, or witty stories in this book. What you will find is a software development kit and APIs reference that is concise, to the point and highly accessible. The book is packed with useful information and is a must-have for any mobile or Android app developer or programmer. In the Android Quick APIs Reference, you will find a concise reference to the Android SDK and its APIs using the official Android Studio IDE. This reference is small and handy and ideal for taking with you to your appointments with your clients. The Android Quick APIs Reference covers: • A short introduction to the Android platform and its development environment • Using the essential parts of Android applications, such as user interface components, notifications, and resources • Storing and accessing data using Android APIs • Accessing device location and using device sensors • Recording and playing back video and audio content • Accessing the camera RELATED TITLES 9781484 205242 52999 ISBN 978-1-4842-0524-2 www.apress.com SOURCE CODE ONLINE www.it-ebooks.info For your convenience Apress has placed some of the front matter material after the index. Please use the Bookmarks and Contents at a Glance links to access them. www.it-ebooks.info v Contents at a Glance About the Author ����������������������������������������������������������������������������� xv About the Technical Reviewer ������������������������������������������������������� xvii Preface ������������������������������������������������������������������������������������������� xix Chapter 1: Android Platform ■ ����������������������������������������������������������� 1 Chapter 2: Development Environment ■ ������������������������������������������ 15 Chapter 3: Application Components ■ ��������������������������������������������� 31 Chapter 4: Application Resources ■ ������������������������������������������������ 69 Chapter 5: Layouts and Views ■ ������������������������������������������������������ 95 Chapter 6: User Interface ■ ����������������������������������������������������������� 139 Chapter 7: Storing Data ■ �������������������������������������������������������������� 171 Chapter 8: Sensors and Location ■ ������������������������������������������������ 199 Chapter 9: Media and Camera ■ ���������������������������������������������������� 217 Index ���������������������������������������������������������������������������������������������� 249 www.it-ebooks.info 1 Chapter 1 Android Platform Android is a platform that is carefully crafted for mobile devices including smartphones, and tablets. It is a combination of an operating system, companion native libraries, application runtime, and an application framework. This chapter provides a brief introduction to the Android platform by emphasizing these key components and their roles in the overall system architecture. This book targets the 5.0 (Lollipop) version of the Android platform, which is the latest official version at the time of this writing. Platform Architecture Android relies on various [...]...References - http://developer .android. com/guide/topics/location/index.ht ml - http://code .google. com /android/ add-ons /google- apis/ - http://www.anddev.org/index.php - http://itouchmap.com/latlong.html [For finding location coordinates] ... Eclipse with Android SDK and AVD Manager • Google Apis • Java • XML • Android device[or Emulator] to test Agenda: Google Maps Api for Android For applications using Google MapViews Android Location... • • Add permissions • • •