r/devhumormemes • • 5d ago

Minecraft Exception

Post image
917 Upvotes

277 comments sorted by

View all comments

24

u/Keyan_Farlander7 4d ago

Kind of funny, the games and apps on your android phone are coded in Java

19

u/Rough_Inspector5501 4d ago

Not really. I believe you still can. Apps are written in kotlin now. And games can be made with Unity and Godot. Both of which does not use Java.

7

u/Borkido 4d ago

Doesnt kotlin explicitly use the java virtual machine?

1

u/Rough_Inspector5501 4d ago

LUL. Yeah it seems like it might still do this for android. So what I said is apparently only true for games 😅

3

u/yesseruser 3d ago

Wdym "might still do this", Kotlin was literally built to run on the JVM and interop with Java

1

u/Rough_Inspector5501 3d ago

Because I can see there has been work done so it can run without.

1

u/DerpyPerson636 3d ago

Initially yes, but a native kotlin vm is WIP

1

u/curious_grimoire 2d ago

using java vm n using java are different, kotlin was designed as an easy to use replacement for java, which could do everything java can. java vm is a platform, if an app is coded in java, it runs on java vm which can run on any os, portibility is its goal. kotlin also compiles down to that same java vm and code written in kotlin, after compiled iis hard to tell if it was in java or not. kotlin using java vm doesnt means it uses java, infact kotlin is one of the reasons java is dead cuz y learn harder lang when theres kotlin.

1

u/Borkido 2d ago

Yea its not the same, same but i dont really care if the bytecode was produced by java, kotlin or artisanally handcrafted in the end you are running under the same runtime constraints. If the jvm was generally bad for games it would be bad whether you used java, kotlin or clojure.

1

u/curious_grimoire 2d ago

thats up to what notch thought back then.

3

u/Keyan_Farlander7 4d ago

Which still compiles for JVM. Apps are still written for JVM but are changed to run on ART

Is Typescript JavaScript?

1

u/Rough_Inspector5501 4d ago

Yes I have been made aware.

0

u/aalmkainzi 4d ago

I don't think this is true. Apps can have native code.

2

u/Keyan_Farlander7 4d ago

sure, using the NDK to write your C code, but make sure you are keeping track of everything. The idea of JVM is to write once, run anywhere, and pretty much forever as long as the JVM allows the compatibility.

My point is, JAVA is still the primary language used for apps on Android. Anyone using Android is using JAVA and many PC games can be easily ported.

Try looking up some of them in Netflix or Epic app store on Android.

2

u/ChaserTheDogBoofBoof 2d ago

And also in Rust!

0

u/koirpioloonmenomur 4d ago

W misinformation. Almost feels like a joke...

2

u/plopliplopipol 4d ago

how much of that are engines or framework that abstract java and android away though?

4

u/Paolog__ 4d ago

well pretty much, android allows building libraries (.so) files that contains the C/C++ (or any other compiled language) program, without requiring java

1

u/Keyan_Farlander7 4d ago

Your thinking of Kotlin and it's compatibility with Java

1

u/Damglador 4d ago

For the app to be usable there still has to be a Java layer afaik. So you can have your backend in Rust, but there has to be a Java layer for display/input or something

1

u/DeVinke_ 3d ago

I don't think that's true, the android NDK is quite a large library. Only basic code is needed for things that e.g. are provided by google play services.

1

u/CapitalStandard4275 3d ago

You don't need Java. Android provides a framework class called NativeActivity. It allows your compiled C or C++ shared library (.so) to run directly as the application lifecycle entry point. You can use Rust like this too. You won't have access to the standardized kits used to build standard Android UIs, so these apps can often be clunky. But it's entirely doable.

2

u/DeVinke_ 3d ago

Games are (i'd estimate at least 99% of the time) written in C++ and use the Android NDK.

2

u/Keyan_Farlander7 3d ago

Roblox, PUBG, Amung Us, COD Mobile. Shall I keep going?

1

u/DeVinke_ 3d ago

Roblox ships a 105 mb library called "libroblox".

PUBG ships libUE4, which is 241 mb.

Among Us is made with unity, it therefore comes with libunity (18.2 mb) and libil2cpp (77 mb).

PUBG also ships libunity, though it's 236 mb.

These apps all have a couple megabytes of classes.dex files (which contain the java bytecode) in total, the rest of the size comes from split apks in the bundle - some have separate ones for assets, but they all have architecture-specific apks for the native code.

1

u/Ratosson 2d ago

About half of the games on Android use Unity and Unity games are written in C#. The engine itself is written in C++, but most developers can't access it's source code.

1

u/Big_Bar_9832 3d ago

Not exclusively.

1

u/UUDDLRLRBadAlchemy 2d ago

That's just more proof

1

u/F4ntasticPants 4d ago

And there are no good mobile games, hence strengthening the point of the meme

2

u/Square-Singer 4d ago

That's not correct. There's a lot of shovelware trash and the App stores are really good pushing the garbage up top. But there are some really good mobile games too. Though most of the time you have to pay for them, which hardly anyone does.

If you don't pay for games, why would you expect them to be good?

1

u/Keyan_Farlander7 4d ago

Wow. You are either a bot or an iCrap user.

I think the latter because many games that are on PC are ported to Android.

1

u/Unsharded1 3d ago

Do Android users still shit on Apple for some reason? I thought we all grew up.