2009-12-02 26 views
7

Say, một ứng dụng tuyên bố chính nó như làThu hồi quyền đối với ứng dụng android?

<uses-permission android:name="android.permission.INTERNET" /> 

Có cách nào cho một người sử dụng (hoặc ứng dụng khác) để thu hồi giấy phép đó (w/o iptables tất nhiên)?

+0

Câu hỏi thú vị ... không chắc chắn lý do tại sao bạn cần nó, vì quyền được sử dụng chủ yếu để cảnh báo người dùng về những gì bạn muốn làm cho điện thoại của họ vào lúc cài đặt. –

+0

@Daniel Bạn cài đặt một ứng dụng mà bạn thường thích nhưng nó sử dụng một số quyền che khuất (như truy cập sms/lịch sử cuộc gọi/bất cứ điều gì) mà bạn không muốn nó. – yanchenko

Trả lời

2

Có cách nào cho một người sử dụng (hoặc ứng dụng khác) để thu hồi mà phép

ngắn gỡ bỏ cài đặt các ứng dụng? Không. Quyết định cấp quyền là một điều một lần khi ứng dụng được cài đặt.

CẬP NHẬT: Trên Android 6.0+, người dùng hiện có thể kiểm soát những ứng dụng có thể thực hiện sau khi cài đặt. Về mặt kỹ thuật, đây không phải là bằng cách thu hồi quyền, mặc dù giao diện người dùng chắc chắn gợi ý nó. Điều này tương tự như công nghệ AppOps bị rò rỉ trong Android 4.3 và bản vá lỗi đầu tiên của Android 4.4. Người dùng chặn hoạt động (ví dụ: truy cập danh bạ) khiến ứng dụng bị ảnh hưởng chỉ cần xem nhà cung cấp trống ContactsContract.

+0

Chính xác. App A tuyên bố một sự cho phép (với cùng một hạn chế chữ ký) và B sử dụng nó. Nếu bạn cài đặt B trước và sau đó A, nó sẽ không thể truy cập tài nguyên được cung cấp bởi A. Có để cài đặt lại B. – yanchenko

+1

Điều này chỉ đúng đối với thiết bị vani. Nếu bạn sẵn sàng sử dụng ít nhất thiết bị của mình, bạn có thể sử dụng ví dụ: XPrivacy như đã đề cập trong [câu trả lời của tôi] (http: // stackoverflow.com/a/26411137/321973) –

+0

@CommonsWare, Đến đây từ tìm kiếm của Google về quyền trên M. Câu trả lời này sẽ được cập nhật. –

4

Chặn Internet

Nếu những gì bạn muốn là để ngăn chặn đặc biệt truy cập Internet cho các ứng dụng được lựa chọn VÀ thiết bị của bạn được bắt nguồn từ đó DroidWall là một trong các tùy chọn (sử dụng chế độ danh sách đen). Btw, trong các phiên bản mới nhất của ứng dụng Google bạn sẽ nhận thấy rằng sự cho phép Internet chơi thậm chí sẽ không được liệt kê khi bạn cài đặt một ứng dụng - Google đã quyết định nó không đáng hiển thị ở đó ..

Tuỳ chỉnh ROM

Tuỳ chỉnh Các ROM như Cyanogen 7.x được tích hợp sẵn quyền quản lý. Khi bạn bật tính năng tương ứng trong Cài đặt -> Cài đặt CyanogenMod, bạn có thể tắt các quyền bạn muốn bằng cách nhấn vào một quyền trong màn hình chi tiết của hệ thống ứng dụng chuẩn. CyanogenMod 9 và sau đó không có tính năng này nữa, bởi vì khi nhóm CyanogenMod đang xem xét thêm thu hồi quyền đối với ICS, Google đã gửi email cho họ đe dọa thu hồi quyền truy cập Google Play cho các thiết bị chạy CyanogenMod trong trường hợp tính năng vẫn tồn tại trong bản dựng Android 4.x .

AppOps

Tính đến phiên bản 4.3 Android chứa App Ops - tích hợp sẵn trong hệ thống quản lý cho phép giới hạn mà không thể truy cập từ giao diện chính, nhưng có thể được kích hoạt bằng cách gọi một ý với hành động android.settings.APP_OPS_SETTINGS. Có một AppOps Starter app trên thị trường phát sẽ bắt đầu mục đích. Nếu bạn sử dụng trình khởi chạy Nova, bạn có thể tạo lối tắt cho AppOps qua Thêm> Phím tắt> Hoạt động> Cài đặt> App Ops (tóm tắt). Bạn cũng có thể tự xây dựng trình khởi chạy từ source code.

Vô hiệu hóa các hoạt động cụ thể

Elixir2 có chọn lọc có thể vô hiệu hóa các hoạt động và thu phát sóng, vì vậy trong nhiều trường hợp nó có thể có thể vô hiệu hóa các hoạt động quảng cáo cụ thể mà có thể dễ dàng nhận ra bởi tên gói của họ.

Sửa đổi file APK

Bạn cũng có thể thử thay đổi các tập tin apk bản thân để loại bỏ các quyền mà bạn không muốn, ví dụ như sử dụng ApkTool (rất khó khăn và sẽ không hoạt động nếu các nhà phát triển phải mất an ninh nghiêm trọng) .

PDroid

hơn Một lựa chọn là PDroid - nó đòi hỏi vá hoặc biên dịch lại ROM của bạn. Một khi bạn có một ROM được xây dựng với mã PDroid, bạn có thể sử dụng pDroid app on Google Play để định cấu hình từng ứng dụng như bạn muốn.

xPosed Khung

Một cách khác mà chỉ yêu cầu root, nhưng không phải là một ROM chuyên ngành là Xposed Framework - một thư viện mà tiêm thân vào quá trình hệ thống Android và cung cấp một API cho các ứng dụng khác (gọi là module Xposed) để làm những điều điên rồ nhất có thể. Ở cấp độ triển khai, nó cho phép các mô-đun chặn bất kỳ cuộc gọi API Android nào, sửa đổi các tham số của nó và đính kèm móc. Mô tả có sẵn trên XDA developers forum. Khi bạn cài đặt khung, có một số mô-đun mà bạn có thể cài đặt sẽ cung cấp cho bạn toàn quyền kiểm soát các quyền của ứng dụng bất kỳ, bao gồm cho ăn dữ liệu giả hoặc ngẫu nhiên cho deviceID, danh bạ, vị trí, quốc gia, v.v. , tại các mô-đun như xPrivacy, AppSettings hoặc AndroidTuner - tất cả đều cho phép thay đổi quyền hoặc yêu cầu bạn xác nhận quyền truy cập. Ngoài ra còn có các mô-đun để kiểm soát bộ thu phát sóng và các mục khởi động. Tôi đã chạy thành công nó trên một số thiết bị với kết quả rất tốt, nhưng sau đó thấy rằng mức tiêu thụ pin tăng đáng kể, không chắc chắn cho dù đó là vì khuôn khổ chính nó, hoặc các mô-đun cụ thể.

+0

CyanogenMod 11 có một cách tiếp cận khác: bạn có thể yêu cầu Android từ chối các cuộc gọi API xấu. Xem https://plus.google.com/+SteveKondik/posts/iLrvqH8tbce để biết chi tiết. Trích xuất: "Tôi đã từ chối các bản vá lỗi này vì chúng tạo ra môi trường thù địch cho các ứng dụng, và đó không phải là hướng tôi muốn xem CM. (...) nhà phát triển không muốn ứng dụng của họ chạy trong môi trường không thể đoán trước. (... Tôi nghĩ rằng các bản vá lỗi này chỉ là nhà hát an ninh hơn và không thực sự giải quyết được vấn đề. Tại sao bạn lại muốn chạy các ứng dụng độc hại? " –

+0

[XPrivacy] (http://forum.xda-developers.com/xposed/modules/xprivacy-ultimate-android-privacy-app-t2320783) cũng rất được đề xuất. –

1

Có cách nào để người dùng (hoặc một ứng dụng khác) thu hồi quyền đó (w/o iptables tất nhiên) không?

"Vâng, nhưng ..."

Nếu bạn sẵn sàng để nhổ tận gốc điện thoại của bạn (mà không còn đòi hỏi bất kỳ nghi lễ huyền bí;), bạn có thể sử dụng XPrivacy (như là một mô-đun cho Xposed). Nó không chỉ đơn giản là từ chối các quyền không được phép (có thể gây ra sự cố ứng dụng), nhưng thay vào đó có thể được thiết lập cho các quyền giả mạo hợp lý mà bạn không thực sự muốn, ví dụ: khi một ứng dụng cố gắng để có được vị trí của bạn, nó tuyên bố bạn đang ở trên quần đảo Phục Sinh. Nó rất linh hoạt (bao gồm cả siêu hoang tưởng "hãy hỏi ME bất cứ lúc nào ứng dụng này muốn làm rằng" và tính năng "cho phép/từ chối cho xx phút" tiện dụng). Oh, và hoàn toàn miễn phí (mặc dù phiên bản chuyên nghiệp, hoàn toàn xứng đáng với tiền của nó, cho phép bạn áp dụng các mẫu quyền cho tất cả các ứng dụng đã cài đặt và truy cập vào kho lưu trữ đám đông với các quyền được xác định trước).

Các vấn đề liên quan