Introducing AndroidX Tech
AndroidX Tech (https://androidx.tech
) is a site that
I am maintaining that contains additional
information about the various androidx
libraries, beyond what is offered
in the official documentation.
It arose from a variety of frustrations when trying to use these libraries and classes.
For example, earlier this week, I wanted to know when saved-state support was
added to the ViewModel
classes. I knew that it involved
the SavedStateHandle
class,
but the official documentation does not show the artifact that this class resides
in, let alone any version information about that artifact (e.g., when was this
class added?). In some cases, the release notes help, and a search of
the lifecycle release notes
would turn up some information. That’s not a reliable solution, though, as not
everything gets mentioned in release notes.
Instead, I went to the AndroidX Tech page for the androidx.lifecycle
package.
There, every class that has appeared in that package is listed, along with
the artifact and versions. There, we can see that SavedStateHandle
was
introduced in androidx.lifecycle:lifecycle-viewmodel-savedstate:1.0.0-alpha01
and the most recent version is androidx.lifecycle:lifecycle-viewmodel-savedstate:1.0.0-alpha03
.
In addition to lists of classes and their associated artifacts, I have:
- Pages per artifact, including:
- Links to the release notes
- Links to details about each artifact version
- Links to documentation, articles, samples, and so forth, that I am manually collecting (though I’m only a tiny way through all of the artifacts at this point)
- Some notes about the role of the artifact, for artifacts that you are likely to use directly
- Pages per artifact version, including:
- The release date
- The SHA-256 checksum of the AAR that I am seeing
- The minimum and target SDK version information
- Any permissions that the artifact requires
- The transitive dependencies that the artifact requires
- Links to each of the source files found in that artifact version
- Formatted source for every source file from every artifact version
- Blog-style posts for new artifacts and versions that I am seeing, including an Atom feed
In addition to building out the manually-curated content and updating the site for new artifacts and versions, I am still working on the site layout. The site is built using MkDocs, which is a nice tool that does not scale to thousands of pages very well. So, I will be rebuilding this in some other static site generator eventually, though I will be keeping the existing URL structure.
If there are other bits of information that you think would be useful on this site — whether it is automatically built from the AARs and POMs or manually added — let me know!. Similarly, if you encounter any problems with the site, tell me!. If you have content about AndroidX that you would like to contribute, the curated content GitLab repo has details about that.