Use stored fragment for requesting permissions

This commit is contained in:
misaochan 2018-01-01 20:43:12 +10:00 committed by maskara
parent 38b04f4417
commit 0662dd5015
2 changed files with 8 additions and 10 deletions

View file

@ -48,23 +48,21 @@ class DirectUpload {
Timber.d("After shared prefs, image title: " + imageTitle + " Image desc: " + imageDesc); Timber.d("After shared prefs, image title: " + imageTitle + " Image desc: " + imageDesc);
} }
void initiateGalleryUpload(Context context) { void initiateGalleryUpload() {
Activity activity = (Activity) context;
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
if (ContextCompat.checkSelfPermission(activity, READ_EXTERNAL_STORAGE) != PERMISSION_GRANTED) { if (ContextCompat.checkSelfPermission(fragment.getActivity(), READ_EXTERNAL_STORAGE) != PERMISSION_GRANTED) {
if (activity.shouldShowRequestPermissionRationale(READ_EXTERNAL_STORAGE)) { if (fragment.getActivity().shouldShowRequestPermissionRationale(READ_EXTERNAL_STORAGE)) {
new AlertDialog.Builder(activity) new AlertDialog.Builder(fragment.getActivity())
.setMessage(activity.getString(R.string.read_storage_permission_rationale)) .setMessage(fragment.getActivity().getString(R.string.read_storage_permission_rationale))
.setPositiveButton("OK", (dialog, which) -> { .setPositiveButton("OK", (dialog, which) -> {
activity.requestPermissions(new String[]{READ_EXTERNAL_STORAGE}, 1); fragment.getActivity().requestPermissions(new String[]{READ_EXTERNAL_STORAGE}, 1);
dialog.dismiss(); dialog.dismiss();
}) })
.setNegativeButton("Cancel", null) .setNegativeButton("Cancel", null)
.create() .create()
.show(); .show();
} else { } else {
activity.requestPermissions(new String[]{READ_EXTERNAL_STORAGE}, fragment.getActivity().requestPermissions(new String[]{READ_EXTERNAL_STORAGE},
1); 1);
} }
} else { } else {

View file

@ -406,7 +406,7 @@ public class NearbyMapFragment extends android.support.v4.app.Fragment {
Timber.d("Image title: " + place.getName() + "Image desc: " + place.getLongDescription()); Timber.d("Image title: " + place.getName() + "Image desc: " + place.getLongDescription());
DirectUpload directUpload = new DirectUpload(place.getName(), place.getLongDescription(), this); DirectUpload directUpload = new DirectUpload(place.getName(), place.getLongDescription(), this);
directUpload.storeSharedPrefs(getActivity()); directUpload.storeSharedPrefs();
directUpload.initiateGalleryUpload(getActivity()); directUpload.initiateGalleryUpload(getActivity());
}); });
} }