Lỗi we need your permission của camera làm sao năm 2024

Permission là một trong những thứ cực kì quan trọng với Android vì nó quyết định đến tính năng cũng như sự an toàn của chúng ta. Tuy nhiên, không phải ai cũng hiểu hết về Permission và ý nghĩa của nó nên các app có thể lợi dụng để khai thác thông tin cá nhân hay thậm chí là trừ tiền cước điện thoại của bạn. Ngoài ra, cũng có trường hợp bản thân chúng ta cũng có thể trở nên quá thận trọng trước các Permission mà bỏ qua những ứng dụng hay và chính đáng. Lúc trước mình từng có bài nói về Permission nhưng đã cũ lắm rồi, nay cập nhật bài lại theo các hệ điều hành Android mới để anh em dễ theo dõi, dễ hiểu và dễ làm hơn.

1. Permission là gì?

Khi một ứng dụng nào đó cần truy cập đến một tính năng đặc biệt trên thiết bị Android của bạn, nó đang hỏi hệ điều hành có cho phép xài hay không, và quyền truy cập đó chính là Permission. Ví dụ, khi app camera của bạn muốn đính kèm dữ liệu GPS vào ảnh, nó phải hỏi Android xem nó có được vào GPS để định vị hay không. Tương tự, khi một app tin nhắn muốn gửi SMS, nó phải liên hệ với Android để xem có được quyền làm chuyện này không.

Permission không chỉ xuất hiện ở Android, nó cũng có mặt ở iOS và Windows 10 Mobile với lý do tương tự, cách hoạt động cũng tương tự. Cái này thì nói cho anh em biết thôi chứ chúng ta chỉ tập trung vào Android trong bài viết này.

2. Vì sao permission quan trọng?

Mục đích của Permission là để đảm bảo sự an toàn và quyền riêng tư cho người dùng. Điện thoại của chúng ta giờ là một "kho tàng" dữ liệu cá nhân trong đó nên việc bảo vệ như thế này là cần thiết. Trong điện thoại có đủ hết mọi loại dữ liệu nhạy cảm, từ tin nhắn, hình ảnh, video cho đến dữ liệu duyệt web hay tài khoản ngân hàng. Thậm chí bộ định vị GPS, dữ liệu di động camera hay micro của smartphone cũng là thứ nhạy cảm vì nó có thể ghi lại hình ảnh của bạn hay những gì bạn nói, cho người khác biết bạn đang ở đâu, bạn đang nói chuyện với ai, nội dung bạn nói là gì...

Bạn có muốn một app theo dõi nào đó lén định vị bạn bằng GPS hay không? Bạn có muốn một app hack tiền nào đó lén gửi SMS đến tổng đài để trừ tiền của bạn trong khi bạn không biết gì? Bạn có muốn một ứng dụng nào đó tưởng chừng vô hại nhưng lại ghi âm các cuộc nói chuyện giữa bạn với đối tác hay không? Permission xuất hiện để ngăn ngừa những tình trạng như vậy, hay nói rộng hơn, là để ngăn cản các lập trình viên xấu khai thác, trục lợi và lừa đảo người dùng khi nói không đúng về chức năng app do họ viết ra.

Năm 2011 và 2013, đã từng có một số app và game xuất hiện ngay ở Việt Nam, chúng lợi dụng việc người dùng không chú ý đến permission để lấy quyền gửi nhận SMS và liên tục nhắn tin đến một tổng đài nào đó để thu lợi. Đáng chú ý, việc gửi SMS này diễn ra hoàn toàn im lặng và bạn không hề hay biết, chỉ khi kiểm tra lại tài khoản mới thấy bị thâm hụt đáng kể. Những app dạng này đôi khi vẫn còn bị bắt gặp trên Play Store.

Lỗi we need your permission của camera làm sao năm 2024

Một số trường hợp khác từng được ghi nhận trên thế giới đó là app hình nền nhưng lại đòi permission để truy cập vào micro, máy ảnh và thậm chí là truy cập xuống GPS. Sau đó người ta phát hiện đây chính là một app dùng để người khác lén theo dõi bạn, kiểu như vợ theo dõi chồng ngoại tình mà chúng ta hay thấy trong phim. Nếu không đọc kĩ permission, bạn chỉ biết rằng đây là ứng dụng thay đổi wallpaper mà thôi, đâu hề hay biết đến những tác dụng khác.

3. Khi nào thì app đòi permission?

Hiện tại (tính đến lúc viết bài này) có 2 cách mà các ứng dụng Android sẽ hỏi bạn về những permission mà chúng được phép sử dụng.

Cách thứ 1: Với những thiết bị chạy Android 5.0 trở xuống, app sẽ hỏi trực tiếp ngay khi bạn chuẩn bị nhấn nút download trên Play Store, kể cả bản nền web hay bản Store có trong Android. Danh sách các permission mà app cần sẽ được liệt kê ra chi tiết kèm theo mô tả ngắn gọn cho bạn biết permission đó có tác dụng gì.

Ví dụ, trong ảnh dưới bạn có thể thấy app iA Writer đang đòi quyền được thực hiện in-app purchase, được truy cập vào hình ảnh và video của bạn, cũng như được nhận dữ liệu từ Internet. Bạn chỉ được quyền đồng ý với tất cả các permission này và cài app, còn nếu không đồng ý thì thôi, không cài (sẽ có cách chỉnh, nói tới ở phần 5 của bài này).

Lỗi we need your permission của camera làm sao năm 2024

Cách thứ 2: Với những thiết bị chạy Android 6.0 trở lên, app sẽ chỉ hỏi permission của bạn khi nào nó cần. Đây là cơ chế mới của Android 6.0 nhằm hạn chế việc người dùng lỡ cài một app nào đó mà không để ý tới permission mà nó đang hỏi để rồi bị lợi dụng. Một điểm mới nữa của Android 6.0 đó là bạn có thể tự mình tắt mở từng permission của từng ứng dụng một, không phải đồng ý hoặc không đồng ý hàng loạt như hồi Android 5.0 trở về trước.

Lỗi we need your permission của camera làm sao năm 2024

Cũng lấy ví dụ với ứng dụng iA Writer, khi bạn chuẩn bị mua hàng bên trong app thì một hộp thoại sẽ xuất hiện hỏi bạn có muốn cấp permission in-app purchase hay không. Khi bạn chuẩn bị đính kèm file ảnh, một hộp thoại khác lại xuất hiện để hỏi permission mang tên media access. Bạn có quyền từ chối permission này, lúc đó chỉ có tính năng đính kèm file ảnh là không hoạt động, còn những permission khác về in-app purchase hay truy cập Internet thì vẫn hoạt động bình thường.

Tương tự, với Facebook Messenger, khi bạn gửi ảnh, bạn sẽ được hỏi là có cho quyền truy cập vào ảnh hay không, hoặc khi gửi địa điểm thì được hỏi là có muốn cho Messenger dùng dữ liệu vị trí hay không. Nếu bạn không cho việc truy cập địa điểm thì nó sẽ không làm ảnh hưởng đến việc truy cập vào file media của app.

4. Những permission và các nhầm lẫn thường thấy

Google chia tất cả permission mà Android cấp cho app thành 2 loại: Permission thường và Permission nguy hiểm.

Permission thường: là những permission có rất ít nguy cơ ảnh hưởng đến sự riêng tư của người dùng hay ảnh hưởng tới các ứng dụng khác. Ví dụ, permission để cài đặt múi giờ là permission thường. Nếu một app khai báo rằng nó cần permission thường, Android sẽ tự động cấp phép cho app mà không cần bạn cho phép, cũng như không thông báo trên Play Store lúc cài đặt.

Những permission thường hay gặp:

  • Tắt bật Bluetooth
  • Tắt bật Wi-Fi
  • Vô hiệu hóa bàn phím ảo
  • Mở status bar
  • Cài đặt shortcut ra màn hình chủ
  • Thay đổi thiết lập âm thanh
  • NFC
  • Cài báo thức, múi giờ, hình nền
  • Dùng vân tay
  • Đọc và ghi thiết lập đồng bộ hóa dữ liệu

Permission nguy hiểm: là những permission liên quan đến sự riêng tư và bảo mật, hoặc có khả năng ảnh hưởng đến dữ liệu đang lưu trên điện thoại hay việc hoạt động của những app khác. Ví dụ, quyền đọc danh bạ của người dùng là một permission nguy hiểm. Nếu một app đòi permission nguy hiểm, người dùng sẽ phải chấp thuận thì nó mới được sử dụng. Một nhóm permission mà mình liệt kê bên dưới có thể có nhiều permission nhỏ hơn, lập trình viên có thể đòi 1, 2 hoặc tất cả permission nhỏ trong một nhóm (ví dụ: có app chỉ đòi đọc danh bạ, app khác đòi đọc và thay đổi danh bạ luôn). Tất cả đều sẽ được hỏi kĩ càng lúc bạn xài tính năng của app.

Các permission nguy hiểm hay gặp:

  • Calendar: truy cập và thay đổi sự kiện lịch
  • Camera: được phép dùng camera hay không
  • Contacts: được phép đọc danh bạ, thay đổi dữ liệu hoặc lấy tài khoản danh bạ hay không.
  • Location: được phép truy cập vị trí chính xác hay vị trí tương đối
  • Microphone: có được dùng micro để ghi âm hay không
  • Phone: có được đọc ghi call log hay không, có được thực hiện cuộc gọi hay không, có được thêm hộp thư thoại hay không
  • Sensor: có được truy cập vào các cảm biến tiệm cận, cảm biến gia tốc kế hay không
  • SMS: gửi, nhận, đọc SMS, gửi nhận MMS, nhận các tin push WAP từ nhà mạng
  • Storage: được phép đọc hoặc ghi lên bộ nhớ ngoài hay không
  • Identity — Find accounts on the device: truy cập vào những tài khoản bạn đang có trên máy, ví dụ tài khoản Facebook, Google, Evernote, Messenger...
  • Photo - Media - File: quyền truy cập vào những tập tin hình ảnh, video và các file nói chung

Khi sử dụng permission trong Android, mình đã từng thấy rất nhiều ứng dụng đòi permission không liên quan đến tính năng của nó. Ví dụ, Swiftkey là một app bàn phím, tại sao nó lại đòi truy cập vào Internet? Lý do là vì app này có đồng bộ dữ liệu đoán từ với máy chủ và nó liên tục học hỏi cách mà bạn gõ để cải thiện nên cần Internet. Nếu anh em hiểu nhầm rằng app này lén lút làm chuyện xấu thì anh em sẽ không cài hoặc không cho phép Swiftkey dùng permission này, vậy là mất đi một tính năng hay.

Tương tự, Facebook Messenger lại đòi quyền truy cập vào danh bạ của bạn, thậm chí còn đòi luôn quyền gửi SMS, camera, microphone... Với những quyền như camera hay microphone thì rõ rồi, nó là chuyện cần thiết cho tính năng chia sẻ ảnh và gửi tin nhắn giọng nói. Nhưng tại sao lại có cả danh bạ và SMS? Lý do là vì Messenger có chức năng đọc danh bạ và gợi ý cho bạn về bạn bè, còn SMS là vì ở một số nước Messenger có thể hoạt động như là một ứng dụng nhắn tin chứ không chỉ để chat. Những chức năng nhỏ nhỏ như thế này có thể anh em không biết nên cảm thấy nghi ngờ về các permission của Messenger, vậy là quyết định không cài nữa.

Đây chính là những nhầm lẫn mà mình quan sát thấy nhiều anh em đã làm trong quá trình xài máy Android. Thực chất anh em nghi ngờ là đúng thôi, do lập trình viên không chịu nói rõ trong khi chúng ta phải lo cho bản thân mình trước, lỡ bị trừ tiền hay đánh cắp thông tin thì sao. Tuy nhiên, nghi ngờ nhiều quá cũng dẫn đến việc bỏ qua một app tốt hoặc một tính năng tốt mà đáng ra không bị nghi ngờ.

Vậy nên cách mà mình thường làm khi thấy nghi ngờ permission của một app là comment thẳng lên Play Store hỏi lập trình viên của app đó để nhận được câu trả lời rõ ràng. Bạn cũng có thể coi qua comment của những người khác, biết đâu có người đã hỏi câu giống như bạn. Nếu câu trả lời không rõ ràng hay không nhận được câu trả lời, chúng ta có quyền không cài app đó và đi tìm app khác tương tự.

5. Cách kiểm tra và vô hiệu hóa permission cho từng ứng dụng

Với Android 5.x.x trở xuống

Chức năng kiểm soát permission trong Android có tên là App Ops, có điều nó bị Google làm ẩn đi nên chúng ta không thấy được. Để làm App Ops hiện lên, bạn cần phải cài ứng dụng App Ops for Android, và khi nào muốn gỡ bỏ nó thì cài app App Ops Uninstaller này. Sau khi cài xong, chạy ứng dụng App Ops lên và chọn vào từng thẻ một, bạn sẽ thấy những app nào đang cần quyền gì.

Bạn cũng có thể tắt permission cho từng ứng dụng riêng lẻ bằng cách chọn vào từng app, sau đó gạt nút tắt với những permission nào mà bạn nghi ngờ. Lưu ý, việc này có thể dẫn đến lỗi không thể chạy app nếu permission đó là thứ quan trọng mà app cần sử dụng.

Lưu ý: nếu bạn xài Android 4.2, bạn sẽ cần phải root máy để bật App Ops. Android 4.3 trở lên thì không cần.

Lỗi we need your permission của camera làm sao năm 2024

Với Android 6.0 trở lên

Android 6.0 cho phép bạn kiểm soát quyền truy cập (permission) của từng app một. Ví dụ, bạn có thể cho Facebook truy cập ảnh nhưng không cho theo dõi GPS, hoặc cho một app nào đó đọc nhưng không được quyền gửi tin nhắn chẳng hạn. Để làm điều đó, bạn vào Settings > Apps > chọn tên app > Permissions > Tắt bật từng quyền tùy theo nhu cầu của bạn.