Releases: muzei/muzei
Muzei API 3.4.2
Muzei API 3.4.2 includes new metadata to support the Google Play SDK Console, which will allow anonymous crash reporting for crashes originating within Muzei's API surface. It is compatible with Muzei 3.3.0 and higher.
What's Changed
- Muzei API now depends on Kotlin 1.9.10 (previously was 1.6.10)
- Muzei API now depends on ExifInterface
1.3.7
(previously was 1.3.3)
Full Changelog: api3.4.1...api3.4.2
Using Muzei API 3.4.2
Include the Muzei API in your app by adding the dependency to your build.gradle
:
implementation "com.google.android.apps.muzei:muzei-api:3.4.2"
Note: Muzei API depends on AndroidX. You must migrate to AndroidX to use the Muzei API.
Muzei API 3.4.1
Muzei API 3.4.1 includes compatibility fixes when targeting API 31 specifically around PendingIntent
mutability and an improvement when multiple threads attempt to download artwork simultaneously. It is compatible with Muzei 3.3.0 and higher.
What's Changed
- Specify PendingIntent mutability for legacy command returned by
getCommands()
by @ianhanniballake in [d4f348a] - Specify PendingIntent mutability in
getArtworkInfo()
withinMuzeiArtProvider
by @yellowbluesky in #747 - Prevent concurrent writes to artwork's cache by @strievi in #712
- Muzei API now depends on ExifInterface
1.3.3
New Contributors
- @yellowbluesky made their first contribution in #747
- @strievi made their first contribution in #712
Full Changelog: api3.4.0...api3.4.1
Using Muzei API 3.4.1
Include the Muzei API in your app by adding the dependency to your build.gradle
:
implementation "com.google.android.apps.muzei:muzei-api:3.4.1"
Note: Muzei API depends on AndroidX. You must migrate to AndroidX to use the Muzei API.
Muzei API 3.4.0
No changes over Muzei API 3.4.0-beta01. It is compatible with Muzei 3.3.0 and higher.
See the updated documentation at api.muzei.co.
Important changes since Muzei API 3.3.0:
- #626 - Remove all deprecated APIs - all of the previously deprecated APIs including
MuzeiArtSource
have been completely removed. - #629 - Convert muzei-api implementation to Kotlin - all of the Muzei API has been rewritten in Kotlin. The APIs are mostly compatible, but there were a few incompatible changes in the conversion. Namely, the
Artwork
class is now immutable and cannot be changed after its construction; you can either use the previousBuilder
API or the new constructor with default parameters to construct anArtwork
object. - #644 - Allow custom command start activity - the
getCommands()
andonCommand()
APIs forMuzeiArtProvider
and the relatedUserCommand
class have been deprecated as they did not allow you to launch an Activity on Android 10+ devices and coupled callbacks to yourMuzeiArtProvider
. The newgetCommandActions()
API allows you to return aRemoteActionCompat
instance for each command, which allows you to launch an activity directly from the command on all API levels, supports attaching an icon to your action (which allows it to show as an icon in Muzei), and allows you to test each callback separately from yourMuzeiArtProvider
. - #658 - Adds a new
MuzeiContract.Sources.isProviderSelected(authority: String)
API (and a Kotlin extension onProviderClient
) to allow you to query whether the givenMuzeiArtProvider
is currently selected within Muzei. This API is compatible with all Muzei2.X
versions. - #659 - Adds a new
MuzeiContract.Sources.createChooseProviderIntent(authority: String)
API to deep link directly into Muzei's "Sources" screen, automatically scrolling to the givenMuzeiArtProvider
, making it much easier to ask users to select yourMuzeiArtProvider
. This is only compatible with Muzei3.4.0 Alpha 2
or higher (callingstartActivity()
with theIntent
returned will throw anActivityNotFoundException
if a previous version of Muzei is installed). - #670 - Adds a new
MuzeiArtDocumentsProvider
that provides a prebuiltDocumentsProvider
that allows users to browse and select images from yourMuzeiArtProvider
via the default file picker and Files app. - Muzei API now compiles with API 30 and includes the proper package visibility changes needed to support targeting API 30. You must change your
compileSdkVersion
to30
when using Muzei API 3.4.0. - c0b42d9, 98735a7 - Improves the performance of
addArtwork(Iterable)
and particularlysetArtwork(Iterable)
as additional follow up work on #623
Include the Muzei API in your app by adding the dependency to your build.gradle
:
implementation "com.google.android.apps.muzei:muzei-api:3.4.0"
Note: Muzei API depends on AndroidX. You must migrate to AndroidX to use the Muzei API.
Muzei Api 3.4.0 Beta 1
Muzei API 3.4.0 Beta 1 includes a number of functional changes. It is compatible with Muzei 3.3.0 and higher.
- c0b42d9, 98735a7 - Improves the performance of
addArtwork(Iterable)
and particularlysetArtwork(Iterable)
as additional follow up work on #623
To see all that is new in Muzei API 3.4.0, please see:
- Muzei API 3.4.0 Alpha 1 release notes
- Muzei API 3.4.0 Alpha 2 release notes
- Muzei API 3.4.0 Alpha 3 release notes
Include the Muzei API in your app by adding the dependency to your build.gradle
:
implementation "com.google.android.apps.muzei:muzei-api:3.4.0-beta01"
Note: Muzei API depends on AndroidX. You must migrate to AndroidX to use the Muzei API.
Muzei Api 3.4.0 Alpha 3
Muzei API 3.4.0 Alpha 3 includes a number of functional and API changes. It is compatible with Muzei 3.3.0 and higher.
- #670 - Adds a new
MuzeiArtDocumentsProvider
that provides a prebuiltDocumentsProvider
that allows users to browse and select images from yourMuzeiArtProvider
via the default file picker and Files app. - Muzei API now compiles with API 30 and includes the proper package visibility changes needed to support targeting API 30. You must change your
compileSdkVersion
to30
when using Alpha 3 or higher.
See milestone for full change details.
Include the Muzei API in your app by adding the dependency to your build.gradle
:
implementation "com.google.android.apps.muzei:muzei-api:3.4.0-alpha03"
Note: Muzei API depends on AndroidX. You must migrate to AndroidX to use the Muzei API.
Muzei API 3.4.0 Alpha 2
Muzei API 3.4.0 Alpha 2 includes a number of functional and API changes. It is compatible with Muzei 3.3.0 and higher.
- #658 - Adds a new
MuzeiContract.Sources.isProviderSelected(authority: String)
API (and a Kotlin extension onProviderClient
) to allow you to query whether the givenMuzeiArtProvider
is currently selected within Muzei. This API is compatible with all Muzei2.X
versions. - #659 - Adds a new
MuzeiContract.Sources.createChooseProviderIntent(authority: String)
API to deep link directly into Muzei's "Sources" screen, automatically scrolling to the givenMuzeiArtProvider
, making it much easier to ask users to select yourMuzeiArtProvider
. This is only compatible with Muzei3.4.0 Alpha 2
or higher (callingstartActivity()
with theIntent
returned will throw anActivityNotFoundException
if a previous version of Muzei is installed).
See milestone for full change details.
Include the Muzei API in your app by adding the dependency to your build.gradle
:
implementation "com.google.android.apps.muzei:muzei-api:3.4.0-alpha02"
Note: Muzei API depends on AndroidX. You must migrate to AndroidX to use the Muzei API.
Muzei API 3.4.0 Alpha 1
Muzei API 3.4.0 Alpha 1 includes a number of functional and API changes. It is compatible with Muzei 3.3.0 and higher.
- #626 - Remove all deprecated APIs - all of the previously deprecated APIs including
MuzeiArtSource
have been completely removed. - #629 - Convert muzei-api implementation to Kotlin - all of the Muzei API has been rewritten in Kotlin. The APIs are mostly compatible, but there were a few incompatible changes in the conversion. Namely, the
Artwork
class is now immutable and cannot be changed after its construction; you can either use the previousBuilder
API or the new constructor with default parameters to construct anArtwork
object. - #644 - Allow custom command start activity - the
getCommands()
andonCommand()
APIs forMuzeiArtProvider
and the relatedUserCommand
class have been deprecated as they did not allow you to launch an Activity on Android 10+ devices and coupled callbacks to yourMuzeiArtProvider
. The newgetCommandActions()
API allows you to return aRemoteActionCompat
instance for each command, which allows you to launch an activity directly from the command on all API levels, supports attaching an icon to your action (which allows it to show as an icon in Muzei), and allows you to test each callback separately from yourMuzeiArtProvider
.
See milestone for full change details.
Include the Muzei API in your app by adding the dependency to your build.gradle
:
implementation "com.google.android.apps.muzei:muzei-api:3.4.0-alpha01"
Note: Muzei API depends on AndroidX. You must migrate to AndroidX to use the Muzei API.
Muzei API 3.2.0
No changes over Muzei API 3.2 Alpha 1. It is compatible with Muzei 3.0.2 and higher.
Important changes:
- #604 provides an alternate API to
openArtworkInfo()
ingetArtworkInfo()
that works for apps running on API 29 (Android 10) devices.
Include the Muzei API in your app by adding the dependency to your build.gradle
:
implementation "com.google.android.apps.muzei:muzei-api:3.2.0"
Note: Muzei API 3.2.0 depends on AndroidX. You must migrate to AndroidX to use Muzei API 3.2.0.
Muzei Legacy 1.0.0
The first release of the Muzei Legacy app. This adds support for Sources using the Muzei Legacy API to Muzei 3.2 and higher.
It is strongly recommended to not use Legacy Sources as per the limitations and issues mentioned in the Legacy Source blog post. Please send feedback to apps still using the Legacy API to convert to the Muzei 3.0 API.
Also available on APK Mirror
Muzei API 3.2.0 Alpha 1
Muzei API 3.2.0 Alpha 1 includes a number of functional and API changes. It is compatible with Muzei 3.0.2 and higher.
- #604 provides an alternate API to
openArtworkInfo()
ingetArtworkInfo()
that works for apps running on API 29 (Android 10) devices. - #611 officially deprecates
MuzeiArtSource
and the related APIs.
See milestone for full change details.
Include the Muzei API in your app by adding the dependency to your build.gradle
:
implementation "com.google.android.apps.muzei:muzei-api:3.2.0-alpha01"
Note: Muzei API depends on AndroidX. You must migrate to AndroidX to use the Muzei API.