2015-10-02 24 views
32

Có ý định để đi tới màn hình "Quyền ứng dụng" của ứng dụng trong Android-M không?Đi tới màn hình Ứng dụng của ứng dụng của tôi

Tôi đang làm cho Ứng dụng của mình sẵn sàng cho Android-M và với mô hình quyền mới. Tôi đã theo tất cả các bước được đề cập trong liên kết

https://developer.android.com/training/permissions/requesting.html

Tất cả mọi thứ được thiết lập và tất cả là tốt chấp nhận rằng nếu người dùng đã kiểm tra các nút "Không bao giờ hỏi lại" và từ chối cho phép, ngày khởi động tiếp theo tôi muốn cung cấp cho người dùng một tùy chọn để chuyển đến "Quyền ứng dụng" của ứng dụng và tự thay đổi quyền, nếu anh ta thay đổi ý định của mình. Tôi muốn làm cho nó dễ dàng hơn một chút đối với người dùng không am hiểu công nghệ cao bằng cách cung cấp một nút sẽ đưa người dùng thẳng đến màn hình "Ứng dụng Quyền" của ứng dụng của tôi. Là có một cách? (Sẽ tốt hơn nhiều so với đưa ra các hướng dẫn sử dụng như MenuSettingsApplicationsManage Applications → chọn ứng dụng)

Cảm ơn bạn đã giúp đỡ!

Trả lời

55

Không, không có ý định truy cập trực tiếp vào màn hình Quyền.

Tuy nhiên, cũng giống như trong các phiên bản trước của Android, bạn có thể trỏ người đến trang thiết lập chi tiết của ứng dụng của bạn sử dụng mã như:

Intent intent = new Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS, 
    Uri.fromParts("package", getPackageName(), null)); 
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
startActivity(intent); 

này sẽ cho phép họ chỉ nhấn một nút duy nhất (nút Permissions trên màn hình đó) trước khi họ có thể truy cập quyền. Lưu ý rằng theo UX around asking for permissions, hãy xem xét liên kết đến trang cài đặt chỉ như một phương sách cuối cùng và chỉ trong trường hợp sự cho phép là cần thiết để ứng dụng của bạn hoạt động hoàn toàn - lý tưởng nhất, bạn nên thể hiện một lý do mạnh mẽ khi shouldShowRequestPermissionRationale() trả về true (nghĩa là họ đã từ chối một lần nhưng chưa nhấn 'không bao giờ hỏi lại') sao cho lần thứ hai người dùng thấy hộp thoại cho phép họ biết chính xác lý do bạn cần sự cho phép đó. Điều này có nghĩa là người dùng nhấn 'không bao giờ hỏi lại' sẽ được coi là một tín hiệu rất mạnh mẽ rằng người dùng sẽ không bao giờ cấp cho bạn quyền đó.

+0

Cảm ơn câu trả lời. Tôi đang hiển thị từ ngữ đầy đủ giải thích lý do tại sao quyền được yêu cầu như bạn đã đề xuất và cũng được đề xuất trong liên kết developer.android. Việc truy cập trang Cài đặt của ứng dụng sẽ đủ gần và bạn nói đúng, nếu tôi không có quyền đó, ứng dụng sẽ khá vô dụng nên đó là phương sách cuối cùng của tôi. Nó sẽ chuyển sang Cài đặt ứng dụng và cấp quyền hoặc bảo lãnh khỏi ứng dụng tại thời điểm đó. Cảm ơn một lần nữa Ian! – luckylukein

+0

Có thể ít nhất là đi tới màn hình quyền toàn cầu không? Một trong đó liệt kê tất cả các quyền, của tất cả các ứng dụng? –

+0

Thật buồn cười rằng đây nên được coi là phương sách cuối cùng. Ý tôi là, tôi đoán tôi có thể hiểu rằng họ muốn bạn sử dụng API cấp phép "chính thức", nhưng thực tế là họ đã thực hiện lệnh gọi không đồng bộ 'requestPermissions' nghĩa là bạn không thể triển khai mô hình M mà không hoàn toàn tìm kiếm lại ứng dụng của mình. – eidylon

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