Skip to content
This repository has been archived by the owner on Feb 11, 2022. It is now read-only.

Releases: spacecowboy/NoNonsense-FilePicker

4.2.1

09 Jan 09:58
4.2.1
Compare
Choose a tag to compare

Fixed

  • Fixed RuntimeException with empty state in onSaveInstanceState #160 (jangrewe)

4.2.0

09 Jan 09:58
4.2.0
Compare
Choose a tag to compare

Added

  • Made OK/Cancel strings into library strings for easy overridability #157 (spacecowboy)

Changed

  • Update build tools to 26.0.2 and update Dropbox sample to v2 API #155 (mitchyboy9)

4.1.0

07 Apr 21:39
4.1.0
Compare
Choose a tag to compare

Added

4.0.1

07 Apr 21:39
4.0.1
Compare
Choose a tag to compare

Fixed

  • Destroy Loader after finish to avoid clearing selections #137 (spacecowboy)

4.0.0

03 Feb 22:39
Compare
Choose a tag to compare

Breaking changes

  • You are now required to define a FileProvider in your manifest for the SD-card picker 101aa70

    Due to recent changes in Android 7.0 Nougat, bare File URIs can no longer be returned in a safe way. This change requires you to add an entry to your manifest to use the included FilePickerFragment and change how you handle the results.

    • You need to add the following to your app's AndroidManifest.xml:
        <provider
            android:name="android.support.v4.content.FileProvider"
            android:authorities="${applicationId}.provider"
            android:exported="false"
            android:grantUriPermissions="true">
            <meta-data
                android:name="android.support.FILE_PROVIDER_PATHS"
                android:resource="@xml/nnf_provider_paths" />
        </provider>
    • Then you must change your result handling. Here is a code snippet illustrating the change for a single result (the same applies to multiple results):
    protected void onActivityResult(int requestCode, int resultCode, Intent intent) {
        // The URI will now be something like content://PACKAGE-NAME/root/path/to/file
        Uri uri = intent.getData();
        // A new utility method is provided to transform the URI to a File object
        File file = com.nononsenseapps.filepicker.Utils.getFileForUri(uri);
        // If you want a URI which matches the old return value, you can do
        Uri fileUri = Uri.fromFile(file);
        // Do something with the result...
    }

    This change was required in order to fix FileUriExposedException being thrown on Android 7.0 Nougat, as reported in #115 and #107.

    Please see the updated activity in the sample app for more examples.

Changed

  • Reading multiple selections via intent.getStringArrayListExtra(AbstractFilePickerActivity.EXTRA_PATHS) is now available for all Android versions 4fef8f8

    This field was previously only populated on versions below Android 4.3. If you target Android versions before 4.3, you can now use a single method of getting the results instead of switching based on version number.

4.0.0-beta1

22 Oct 17:06
Compare
Choose a tag to compare
4.0.0-beta1 Pre-release
Pre-release

Breaking changes

  • You are now required to define a FileProvider in your manifest for the SD-card picker 101aa70

    Due to recent changes in Android 7.0 Nougat, bare File URIs can no longer be returned in a safe way. This change requires you to add an entry to your manifest to use the included FilePickerFragment and change how you handle the results.

    • You need to add the following to your app's AndroidManifest.xml:
        <provider
            android:name="android.support.v4.content.FileProvider"
            android:authorities="${applicationId}.provider"
            android:exported="false"
            android:grantUriPermissions="true">
            <meta-data
                android:name="android.support.FILE_PROVIDER_PATHS"
                android:resource="@xml/nnf_provider_paths" />
        </provider>
    • Then you must change your result handling. Here is a code snippet illustrating the change for a single result (the same applies to multiple results):
    protected void onActivityResult(int requestCode, int resultCode, Intent intent) {
        // The URI will now be something like content://PACKAGE-NAME/root/path/to/file
        Uri uri = intent.getData();
        // A new utility method is provided to transform the URI to a File object
        File file = com.nononsenseapps.filepicker.Utils.getFileForUri(uri);
        // If you want a URI which matches the old return value, you can do
        Uri fileUri = Uri.fromFile(file);
        // Do something with the result...
    }

    This change was required in order to fix FileUriExposedException being thrown on Android 7.0 Nougat, as reported in #115 and #107.

    Please see the updated activity in the sample app for more examples.

Changed

  • Reading multiple selections via intent.getStringArrayListExtra(AbstractFilePickerActivity.EXTRA_PATHS) is now available for all Android versions 4fef8f8

    This field was previously only populated on versions below Android 4.3. If you target Android versions before 4.3, you can now use a single method of getting the results instead of switching based on version number.

3.1.0

30 Sep 22:11
3.1.0
Compare
Choose a tag to compare

Changelog

Full Changelog

Changes

  • Fixed missing NonNull annotation in Dropbox Fragment #113
  • Bump compileVersion to 24 with matching dependencies #113

3.0.1

30 Sep 22:08
3.0.1
Compare
Choose a tag to compare

Added

Changed

Fixed

3.0.0

03 Jul 15:37
Compare
Choose a tag to compare

Changelog

Full Changelog

Implemented enhancements:

Closed issues:

  • Add ability to input filename #82

New mode

  • A new mode has been added which matches the traditional Save as dialog in desktop programs. This new mode has a text field which allows the user to input a desired filename.
  • Related to the new mode, a new option called Allow existing has been added.
  • Moved part of FilePickerFragment.isItemVisible() into AbstractFilePickerFragment.isItemVisible() to allow any subclass to inherit behavior with regards to modes and options.

Breaking changes

  • To support the new mode, AbstractFilePickerFragment has been given additional parameters in constructor and arg methods, see for example setArgs(). If you have no interest in the new Save as-mode, either true or false is fine to hardcode as the new parameter's value.

2.5.3

08 Jun 22:18
Compare
Choose a tag to compare

2.5.3 (2016-06-09)

Full Changelog

Implemented enhancements:

  • Add paths to permission and refresh methods #85
  • Add FastScroller sample implementation #89 (spacecowboy)
  • Add a getItem method to FileItemAdapter #88 (spacecowboy)

Fixed bugs:

  • Crash while creating folder in dropbox sample #76

Closed issues:

  • Fast Scroll #87