Permission trong Android

Khóa học lập trình Android cơ bản

0.0 (0 đánh giá)
Tạo bởi Kteam Cập nhật lần cuối 5 năm trước 48.434 lượt xem 0 bình luận
Tác giả/Dịch giả: Kteam
Học nhanh

Danh sách bài học

01. Giới thiệu lập trình Android và cài đặt môi trường 02. Các chức năng cơ bản của Android Studio 03. Cài đặt máy ảo Android - Có thể bạn chưa biết 04. Cách debug cơ bản với Android Studio 05. Các thành phần giao diện (UI) cơ bản 06. Intent & Manifest trong Lập trình Android 07. Vòng đời của Activity trong Android 08. Fragment và cơ chế BackStack 09. Material Design và Coding Convention 10. ListView và Custom Adapter 11. RecyclerView và ViewHolder trong Android Studio 12. Giao diện trượt ngang với ViewPager và Tab trong Android cơ bản 13. Animation và Transition trong lập trình Android cơ bản 14. Xử lý bất đồng bộ trong lập trình Android cơ bản 15. JSON và web API trong lập trình Android cơ bản 16. Permission trong Android 17. Xử lý nội dung đa phương tiện 18. Lưu trữ dữ liệu với SharedPreferences 19. Lưu trữ dữ liệu với SQLite 20. Lưu trữ dữ liệu với SQLite (Thực hành) 21. Thực hành SQLite với Sugar ORM 22. Tích hợp mạng xã hội - Tạo app Facebook 23. Tích hợp mạng xã hội - Login với Facebook 24. Tích hợp mạng xã hội vào ứng dụng Android (Google) 25. Tích hợp mạng xã hội vào ứng dụng Android (Google) - Phần 2 26. Google Cloud Messaging và Push Notification trong Android - Phần 1 27. Google Cloud Messaging và Push Notification trong Android - Phần 2

Permission trong Android

Dẫn nhập

Chào mừng các bạn đã đến bài học khá đặc biệt trong serial LẬP TRÌNH ANDROID CƠ BẢN của Kteam. Bài học này chủ yếu là lý thuyết và thông tin chay về Permission – cấp quyền trong Android.

Do Android là hệ điều hành có tính phân quyền theo từng ứng dụng. Các ứng dụng muốn truy cập tài nguyên hệ thống đều phải được sự đồng ý của người dùng chứ không được tác oai tác quái. Đây cũng có thể coi là một lớp bảo mật khá tốt của hệ điều hành Android.

Vậy bên trong nó có gì, chúng ta cùng tìm hiểu nhé!


Nội dung

Để đọc hiểu bài này tốt nhất các bạn nên có kiến thức cơ bản về các phần:

Trong bài học này, chúng ta sẽ cùng tìm hiểu các vấn đề:

  • Permission trong Android (dĩ nhiên).
  • Viết một chương trình nhỏ để xem cái gọi là Run-time permission trong Android 6.

Permission trong Android

 OK! hẳn là nếu bạn đã và đang dùng thiết bị Android, thì cũng không lạ gì với những hộp thông báo như thế này trước khi cài đặt:

Permission trong Android

Về bản chất thì Permission là những giấy phép cấp quyền truy cập một chức năng nào đó trong ứng dụng mà bạn (người dùng) cho phép.

Các Permission này giống như thỏa hiệp giữa ứng dụng và người dùng. Ở Việt Nam thì người ta thường cứ OK, OK nhắm mắt mà cài. Nhưng nếu ứng dụng của bạn nhắm đến thị trường rộng hơn, cụ thể là ra quốc tế, thì nên chú ý về việc bảo vệ thông tin cá nhân của người dùng, bởi người nước ngoài rất nhạy cảm về vấn đề riêng tư.


Một số Permission cần lưu ý

Các Permission cần được viết trong file AndroidManifest.xml, cùng cấp với element <application>

Sau đây là các Permission có tính nhạy cảm cao. Do nếu các thông tin được cung cấp từ những Permission này rơi vào tay những người có ý định lợi dụng, thì hiển nhiên là hậu quả sẽ rất xấu. Đây cũng là những Permission mà người dùng rất dè dặt chia sẻ:

Location (Vị trí)

Vị trí được chia làm 2 loại FINE LOCATION (vị trí chính xác) và COARSE LOCATION (vị trí tương đối).

Permission trong Android

Ví dụ như app Facebook tự động nhận diện vị trí của bạn khi đăng status, hoặc app có quảng cáo sẽ hiện quảng cáo tiếng Việt khi bạn ở Việt Nam.

Permission trong Android


Phone Status

Permission trong Android

Đây là Permission để kiểm soát các cuộc gọi. Ví dụ một app chứa mã độc nào đó thực hiện các cuộc gọi ngầm thì chẳng mấy chốc mà hết sạch tiền trong tài khoản.


Read and modify contacts

Đây là Permission cho phép kiểm soát danh bạ và các thông tin liên lạc, cũng như trên, hãy cẩn thận với những app yêu cầu quyền truy cập này một cách vô lý (như app nghe nhạc thì cần gì phải đến số điện thoại, nhỉ?).


SMS

Cũng như trên, nhưng lần này là liên quan đến tin nhắn và các hành động liên quan như gửi / nhận tin.


Account

Permission trong Android

Android có cơ chế quản lý tài khoản tích hợp. Vào mục tùy chọn và các bạn có thể thấy nhiều tài khoản của bạn được quản lý ở đây. Ví dụ trên máy mình có những tài khoản này:


Runtime Permission

Kể từ Android phiên bản 6.0, Google đã thay đổi cách thức yêu cầu Permission trên ứng dụng Android.

Nếu như từ các phiên bản 5 trở về trước, Permission của ứng dụng được gọi ra khi bạn cài app, và bạn chỉ cần đồng ý 1 lần duy nhất:

Permission trong Android

Thì ở phiên bản 6.0, từng Permission sẽ được hỏi khi bạn truy cập đến phần chức năng của ứng dụng yêu cầu Permission đó:

Permission trong Android

Và để minh họa cho chức năng này, chúng ta sẽ xem ngay ví dụ mà Google đã soạn sẵn như sau:

Bước 1: Chạy Android Studio, đợi nó load vào màn hình này:

Permission trong Android

Chọn import an Android code sample, hoặc nếu đã có project mở từ trước thì vào File > Close Project. Sau đó vào lại như trên.

Bước 2: Tìm với từ khóa “runtime” và chọn như hình, nhấn Next:

Permission trong Android

Bước 3: Bạn có thể đặt lại tên cho Project, rồi nhấn Finish, sau đó chạy thử luôn code:

Permission trong Android

Nhấn Finish, và chúng ta có ngay một Project để chạy thử và… phẫu thuật code. Và sớm thì muộn thì bạn cũng sẽ phát hiện ra rằng…


Runtime Permission – mình thích thì mình request thôi!

Permission trong Android

Tất cả những gì chúng ta quan tâm đều nằm trong hàm requestContactsPermissions()

Ở đây chúng ta có thể sử dụng cả 2 lớp ActivityCompat ContextCompat. Hai lớp này đều có các phương thức để request quyền.

Và chúng ta có được:

Permission trong Android

Yên tâm là Permission này được hệ thống lưu lại nên có thể được sử dụng cho lần sau.


Kết luận

Qua bài này bạn đã nắm được lý thuyết và thông tin chay về Permission – cấp quyền trong Android.

Bài sau chúng ta sẽ tìm hiểu cách XỬ LÝ NỘI DUNG ĐA PHƯƠNG TIỆN.

Cảm ơn các bạn đã theo dõi bài viết. Hãy để lại bình luận hoặc góp ý của mình để phát triển bài viết tốt hơn. Đừng quên “Luyện tập – Thử thách – Không ngại khó”.


Tải xuống

Tài liệu

Nhằm phục vụ mục đích học tập Offline của cộng đồng, Kteam hỗ trợ tính năng lưu trữ nội dung bài học Permission trong Android dưới dạng file PDF trong link bên dưới.

Ngoài ra, bạn cũng có thể tìm thấy các tài liệu được đóng góp từ cộng đồng ở mục TÀI LIỆU trên thư viện Howkteam.com

Đừng quên likeshare để ủng hộ Kteam và tác giả nhé!


Thảo luận

Nếu bạn có bất kỳ khó khăn hay thắc mắc gì về khóa học, đừng ngần ngại đặt câu hỏi trong phần bên dưới hoặc trong mục HỎI & ĐÁP trên thư viện Howkteam.com để nhận được sự hỗ trợ từ cộng đồng.

Tác giả/Dịch giả

Khóa học

Khóa học lập trình Android cơ bản

Serial tutorial hướng dẫn lập trình Android cơ bản

Đánh giá

0.0
0 đánh giá
Đánh giá
5
4
3
2
1

Bình luận

Để bình luận, bạn cần đăng nhập bằng tài khoản Howkteam.

Đăng nhập
Không có video.