So what barrier to entry is there to downloading https://dl.google.com/android/repository/sdk-tools-linux-3859397.zip … from https://developer.android.com/studio/index.html … and using sdkmanager to update / install whatever you need?
Is there any "hello world" like that I can look at that's not using some awful IDE tree layout, just the minimal number of lines/files needed to actually make something that can be built and run?
-
-
https://github.com/copperhead/Hello/tree/flat … shows how to flatten it into a more traditional gradle project, like Signal. The gradle wrapper commit is optional. It makes it easier for people to build. It uses the support library so it's not minimal, but nearly everything should use the support lib.
-
Could delete colors.xml and remove the references to it for the standard theme, and it could use a baseline layout like LinearLayout to avoid that extra support library dependency. Probably do want to use appcompat for support legacy Android sanely via static linking + shims.
-
A minimal app would use Activity instead of AppCompatActivity but then it doesn't have the support library providing newer APIs for older targets and automatically working around bugs in the older OS. If target is API 23+ or so, can do w/o it and have a tiny apk but prob want it.
-
They're starting to deprecate as much as possible in the base OS with Android P (9.0) to only have it implemented in the support libraries. AppCompat is still totally optional but even if an app starts as API 23+ today and doesn't need it, it probably will want it later on.
-
Could also delete the repositories for downloading dependencies with gradle.
-
https://developer.android.com/studio/write/java8-support.html … and https://developer.android.com/studio/publish/app-signing.html#gradle-sign … are other baseline things that are usually wanted. Also, project structure with Bazel or an alternative would probably look exactly the same as this flat approach to gradle. The nesting is super over-engineered.
-
Find it bad enough that Java projects nest directories based on namespaces and reverse of the domain is the standard baseline namespace. Can avoid that by adding a prefix via gradle but it'd be kinda weird.
End of conversation
New conversation -
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.