Tôi có một đoạn trong đó tôi có recyclerview và thiết lập dữ liệu trong recyclerview này bằng cách sử dụng bộ chuyển đổi recyclerview.
Bây giờ, tôi có một nút trong mục danh sách của bộ điều hợp nhấp vào mà tôi cần kiểm tra quyền READ_EXTERNAL_STORAGE trong Android để biết mô hình cấp phép mới trong Android.
Tôi đã tạo một chức năng mới trong đoạn của bộ điều hợp này để kiểm tra xem có được phép hay không và yêu cầu cho phép nếu chưa được cấp.
Tôi đã thông qua MyFragment.this như một tham số trong bộ điều hợp và gọi phương thức của đoạn trên nút bấm trong bộ điều hợp.
Tôi đã sử dụng đoạn mã dưới đây để gọi requestPermission trong đoạn.
if(ContextCompat.checkSelfPermission(mContext, Manifest.permission.READ_EXTERNAL_STORAGE)
!= PackageManager.PERMISSION_GRANTED){
requestPermissions(new String[]{Manifest.permission.READ_EXTERNAL_STORAGE},
ConstantVariables.READ_EXTERNAL_STORAGE);
}
Tôi đã ghi đè onRequestPermissionsResult
phương thức trong đoạn bằng cách sử dụng đoạn mã dưới đây:
@Override
public void onRequestPermissionsResult(int requestCode, String permissions[], int[] grantResults) {
switch (requestCode) {
case ConstantVariables.READ_EXTERNAL_STORAGE:
// If request is cancelled, the result arrays are empty.
if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
// permission was granted, proceed to the normal flow.
startImageUploading();
} else {}
Nhưng nó không được gọi, thay vì phương thức onRequestPermissionsResult của Activity này đang được gọi.
Tôi cũng đã định nghĩa phương thức onRequestPermissionsResult tương tự trong hoạt động chính của đoạn và nó cũng được gọi.
Tôi không thể xóa phương thức onRequestPermissionsResult của hoạt động nhưng muốn gọi phương thức onRequestPermissionsResult của phân đoạn khi tôi yêu cầu sự cho phép của phân đoạn. Tôi có thể làm cái này như thế nào? Tôi có làm điều gì sai ở đây không, xin hãy giúp tôi nếu có ai có ý tưởng ở đây.