• Ever wanted an RSS feed of all your favorite gaming news sites? Go check out our new Gaming Headlines feed! Read more about it here.

Maple

Member
Oct 27, 2017
11,719
So I made a little program in Java and I'm thinking about turning it into an Android app, just to learn and try something new.

The Java program is super basic. It's just a little program for biology laboratories that takes in about 4 values and returns 2 values. The user can change between units. That's all it does. There's no back end, APIs, connecting to servers, user profiles, data storage, etc. Nothing fancy, just really a fancy niche calculator.

And since most Android apps are written in Java I thought it would be cool to turn this into a smartphone app. I'm guessing the first thing I'll need to do is download Android Studio? And after that, I'll have to build a basic UI so it becomes usable - I'm guessing I'll need to learn something like Flutter? I'm not sure how involved this is or if there is an easier solution.

After that, I really don't know what else is involved. Does Android Studio compile and package everything into a workable app? I feel like I have the hard part out of the way given the the actual logic portion of the program is done, and everything else after that is just packaging and UI stuff.

What other topics or technologies do I need to familiarize myself in order to make this work?
 

Anacaona

Avenger
Oct 25, 2017
1,902
You need android studios no matter what. If you're just starting mobile development, I'll recommend you use React Native. If you wanna go full native (pure java / kotlin) all you need is android studio (it includes everything you need. Just make sure you download the needed package from the Android Studios settings).

Once, you have your program, you'll need to create some keys to sign your apk and then go to https://play.google.com/apps/publish/signup/ and follow the steps.
 
OP
OP
Maple

Maple

Member
Oct 27, 2017
11,719
You need android studios no matter what. If you're just starting mobile development, I'll recommend you use React Native. If you wanna go full native (pure java / kotlin) all you need is android studio (it includes everything you need. Just make sure you download the needed package from the Android Studios settings).

Once, you have your program, you'll need to create some keys to sign your apk and then go to https://play.google.com/apps/publish/signup/ and follow the steps.

Is React Native used for the UI? Is this simpler to grasp than something like Flutter (someone else told me I need to use Flutter so I don't know)?

I was hoping to be able to just copy and paste the Java code I wrote into Android Studio and build a UI around it.
 

Anacaona

Avenger
Oct 25, 2017
1,902
Is React Native used for the UI? Or do I use Java to make the UI?

I was hoping to be able to just copy and paste the Java code I wrote into Android Studio and build a UI around it.
Is not as simple as "copy and paste it" but since you already know java, you shouldn't have any problems with Android. There are a few things that changes here and there, but overall it's almost the same. But yeah, you don't need anything else if all you want is port your java code to android. Android Studio makes it easier (read: easier, not easy) for your to build the mobile UI while you code.

Generally, you want to build the UI at the same time you do the code.
 

Aztechnology

Community Resettler
Avenger
Oct 25, 2017
14,134
You need android studios no matter what. If you're just starting mobile development, I'll recommend you use React Native. If you wanna go full native (pure java / kotlin) all you need is android studio (it includes everything you need. Just make sure you download the needed package from the Android Studios settings).

Once, you have your program, you'll need to create some keys to sign your apk and then go to https://play.google.com/apps/publish/signup/ and follow the steps.
This is more or less what I came in to recommend.

I'd also recommend building with expo for react native just for additional simplicity on your end.
 
OP
OP
Maple

Maple

Member
Oct 27, 2017
11,719
This is more or less what I came in to recommend.

I'd also recommend building with expo for react native just for additional simplicity on your end.

It seems React Native is a Javascript framework? Do I need to spend some time learning JS before utilizing this framework for an Android app?
 

The Albatross

Member
Oct 25, 2017
38,958
Yeah I'm also wondering about Flutter... I've got a developer at work whose telling me we need to start building applications in FLutter and I'm pretty reticent because of Google's tendency to kinda drop projects like this or abandon them (Polymer is one example that I wasted way too much time on years ago). I remember Flutter got a lot of attention at announcement and then ... like I haven't heard much since.
 

Aztechnology

Community Resettler
Avenger
Oct 25, 2017
14,134
It seems React Native is a Javascript framework? Do I need to spend some time learning JS before utilizing this framework for an Android app?
Honestly if you just use the documentation, and reference html/basic stylesheet understanding you should be fine. You can follow a guide or YouTube video if you can find something similiar to what you have in mind to set it up. But I've done development with Java and Android studio, swift/xcode natively. And react native is just substantially easier in almost every way to create a basic working app. You can also export it to different OS/device types easier than you can with native apps. So it's worth the time to learn a little if needed over native development in your case.
 
Dec 2, 2017
58
If your goal is to simply make an app and nothing more (no interest in learning another language at the moment, exploring React Native, learning Flutter) then I recommend following this Google-provided tutorial which is Java-only and should get you up-to-speed on how to make a very basic app with simple UI elements (a single button with a text label that updates when the button's pressed).

After you learn these basics, you can port your existing Java class over to the CodeLab code and hook up the button and text to its output.

Personally, I recommend doing exactly this instead of diving down the rabbit hole of other tech stacks. You can always look into that stuff later, and you'll get the satisfaction of getting what you sought out to do done faster.