Yang C
@ychescale9
Followers
692
Following
1K
Media
63
Statuses
702
Android and Opensource https://t.co/ebwJAK255a
Melbourne
Joined October 2012
I'm finally ready to share Android App Versioning - A Gradle Plugin for lazily generating Android app's versionCode & versionName from Git tags, along with a blog post🤓 https://t.co/n66tdetaXe
https://t.co/duHuriM1ol
Now with support for customizing versionCode and versionName with a lambda 🤓 Still lazy, incremental / cacheable.
5
10
74
If the only purpose of your abstraction is to reduce code duplication, it’s a poor abstraction
60
57
884
I have published Kopy, a K2 compiler plugin that allows nested copies. https://t.co/EhGiYL4MY0
3
7
50
Startup TTID metric is surprisingly much better by just having some sharedBounds / sharedElement modifiers added to the initial screen 😂
1
0
0
the `frameOverrunMs ` metric is noticeably worse though not sure if it's due to adding more animations in general.
1
0
0
if you're curious about the perf impact, I ran some benchmarks for screen transitions with and without shared element transitions https://t.co/IrL1P65h7D
Performance impact in debug builds😬: on my Pixel 8 there are noticeable janks during the transitions. Release builds seem perfectly fine, but keen to run some benchmarks to see the diffs.
1
0
2
Apollo Kotlin 4.0.0-beta.6 added support for configuring ApolloClient with a lazily initialized Call.Factory, just like retrofit and coil 🤓 https://t.co/hECYZ8f5N7
github.com
Resolves #5775 I've tested this locally: Eager OkHttpClient init: Lazy OkHttpClient init: Creation of ApolloClient no longer crates an OkHttpClient. The creation of OkHttpClient is now d...
0
0
11
Overall the shared element transitions APIs look super promising for a first public release, knowing there are tons more to explore and that @doris4lt will always deliver🎉
2
0
1
Performance impact in debug builds😬: on my Pixel 8 there are noticeable janks during the transitions. Release builds seem perfectly fine, but keen to run some benchmarks to see the diffs.
1
0
2
For this reason the Composable of the destination element might often need to take the key (generated dynamically) as a param, which I imagine will lead to lot of debates (and innovations) in a modularized codebase with a complex navigation system.
1
0
3
In a screen where multiple elements can transition to the same destination state (detail screen), having duplicated keys can make shared elements disappear or flicker, and the transitions might look surprising 🙃
1
0
2
The `SharedContentState` key can make or break the transitions and it's important they are unique across the entire hierarchy.
1
0
2
Having to carry around / propagate the `SharedTransitionScope` and `AnimatedVisibilityScope` can be tiring especially when an element deep in the hierarchy needs to participate 😅. Context receiver / parameters seems like a perfect use case here.
1
0
3
Things mostly just work out of box. Even when there's no shared elements between a list and a detail screen, simply adding a `sharedBounds(...)` makes the transitions look much better.
1
0
4
Added dynamic shared content keys and fixed backstack state issues, looking a bit more polished now🤓 Some initial impressions 🧵
5
3
37
A bit late to the party but the new shared element APIs are dope 🤩
2
0
21