While I've only briefly skimmed it myself, I've heard a lot of good things about The Busy Coder's Guide to Android Development. Newer editions require a $20 "subscription", but older ones are available for free [1].
Maybe they shifted focus to that in the past years.
Raywenderlich.com is always my first pick.
I'm lazy and not very academic, and I feel like I always end up following a Medium or Hackernoon tutorial and using the official API docs for supplemental reference. I feel like this has been my experience for Flutter, React, ReactNative, Docker. I'm actually curious what folks' favorite 1st party docs are.
[0]: https://en.wikipedia.org/wiki/The_C_Programming_Language
Also I really like React’s documentation. Previously, I had used random tutorials to get started but recently I went through their official docs to fill in gaps in my knowledge. Now I wish I had started with official docs in the first place.
This isn't necessarily conscious conspiracy on the part of the perpetrators. But it's a systemic attitude that ultimately has the same effect, and the incentives point in that direction. Remember, Google/Apple only make money on their respective app stores when you buy an app - free apps are worthless to them, as are apps you write yourself; free software apps that let you escape the ecosystem are worse than worthless!
https://www.udacity.com/course/developing-android-apps-with-...
https://www.udacity.com/course/advanced-android-with-kotlin-...
That gives you a solid start to look into more details and do some codelabs on
https://codelabs.developers.google.com/?cat=Android
or watch a series about a certain topic on Youtube. I really like the Coding In Flow channel:
It trails React Native significantly.
Google, and similarly large companies, have an entire infrastructure and internal community built around supporting tech stacks. If/When developers hit bugs or limitations, Google has the resources to address it. They can literally assign an entire team to improve a single performance aspect of Flutter or build any missing functionality (much of which is going to stay internal to Google).
Outside developers don't have that ability or bandwidth. They can't afford to stop feature development for days or weeks to figure out quirks/improve Flutter. They're almost 100% reliant on public feature set and community support.
From a pure tech POV, Flutter seems like a better technology approach. However, there have been plenty of "technologically better" frameworks that have failed because the general community does not support them.
His 100 Days of Swift (and Swift UI) are also quite good to work through. He is widely known and respected in the iOS development community and works hard to keep it all up to date (all updates are included if you purchase his books).
I’ve loved them. Just chiming in to also suggest them.
I was interested in something similar, many years ago, and realized that the app I wanted to write didn't call upon any of the internal resources of the Android phone. So I was able to write it in Javascript / HTML, and it runs on any platform in a browser.
They're all outdated now, still in Java. It's open source, so I might actually get around to contributing to them.
Being able to ship to both platforms from the beginning creates a different kind of momentum.
This is perhaps one of the most commonly used widgets in Android: https://developer.android.com/reference/android/support/v7/w...
It doesn't say why it's deprecated and what it's replaced with. The link is even more confusing. And the document itself also doesn't say what a RecyclerView is or how to use it.