Okay.
Let's talk about a build process now.
Well, this process is kind of complicated outside of the scope of this tutorial because this might
be a tutorial itself.
So there's a lot of different things that you need to do to prepare your application for a production.
So what we need to do is we need to start with two things.
Basically, if you would like to publish your application on Google platform, which is Android platform,
you will need to have a Google developer account.
So you can go to Developer.android.com and then you will sign in with your Google account.
And then you need to create a developer account and that costs you $25 or your currency in your country
or equivalent of that money in your country.
So basically, once you will have the Google developer account, that's an account for lifetime.
So you pay $25 and that's it.
Once you will have that, you will be able to access Google Play and then you can create application
and you can upload your APK apk file there.
So that's been said.
You will need to have a Google developer account to publish your app on Google Market.
Another thing is what you will need to have is you will need to have developer account for Apple and
this is much more expensive and much more complicated to do.
So basically well, creating an account is not that complicated.
You create an account, then you pay for it and you pay $100 or whatever the amount is in your country.
You're paying $100 for a year.
Yes, for a year.
So every single year you need to pay $100 it to maintain or euro or whatever the currency.
You have to maintain your developer account.
If you don't pay it, then you lose access to your applications and you won't be able to to have them
on the market.
So that's really unfair.
I don't think it's a fair price for developers.
They just want to have extra profit on it and that's it.
So I strongly disagree with their politics, but nothing we can do about it.
If you would like to publish applications on Apple Market on the App Store, then you need to go for
it.
So once you will have that, the process is kind of complicated.
You need to have sign certificates and and so on.
So that's and that is the reason why I don't want to go through all of that on this tutorial, but this
will be the way to do so.
Basically, if you would like to know more, what is the full process of building your application?
You can go to Docs export IO and then you can pick the latest version and insight manage workflow.
If you scroll down, you will see distribution.
Your app and you will have building standalone application.
So basically you have overview and then app signing, deploy to app stores and so on and so on.
So that's a very useful article if you would like to publish, your application will go here first and
read articles.
So what I can show you instead, I'm not going to build a full application, but what I want to show
you is an example.
How would you do that?
So normally what we have here is we have an expo.
So Expo comes with some kind of built in functionality and one of the functionality is to build the
app for us.
Otherwise if we will use React Native Init command, we will need to handle that on ourselves.
So that's a good thing that we use Expo because Expo can do it for us.
So how how Expo will do it?
Basically we use command Expo build and then let's say Android, we can do Android or iOS.
And as I said, we are not going to be able to do iOS on, not on Mac.
So I will do Expo Build Android.
An expo might.
Expo might actually ask you for.
For an account.
So right here in the terminal, it will ask you Do you have an account with Expo?
You can create one.
So providing just the email address, username password.
You can do everything here and it will be done already.
You've done it.
So it's not asking me.
But be prepared for that.
It's free, so you don't need to worry about that.
So now we have an error.
So what is happening here is basically I don't have any information about the build so far.
So what I need to do is I will go to the App.json here and if you scroll down here, you have iOS and
then some settings for iOS.
What I need to do is I will need to create a settings for Android and then I need to put a package.
And then name of the package package needs to be unique.
So that means on the apple on the market, they cannot be two applications with the same package name.
So usually what you will do if you know, own a domain, you will do something like something like a
reverse domain.
So my domain is I own a website, which is true.
Sign that.
That's my website.
So my reverse domain will be I true sign.
And then I can also provide the name of the application, let's say movies like that.
So that will be my package.
And that package will be unique because no one else have that domain.
So this is my domain and no one ever use it before and can't use it because I'm paying for it.
And then name of the applications you can have under your domain multiple application.
So that's the android and you can do the same package for iOS, but we are not going to build iOS here,
so I will just save it and then I will repeat the expo build Android.
And it's trying and it's building an application for me.
And I have to say also for Android, what you will need to do is you will need to sign your application
with a key.
So you will need to prepare that.
Otherwise this expo will produce an APK file that you can actually download.
You can give it to someone, and from that file you can install your application on your phone, but
you will be asked untrusted source.
So basically you click it and then Android will ask you Do you want to install application from an untrusted
source?
Or you need to go to the settings and enable that.
So basically to have a production ready application, you will need to also sign it.
So what is happening here is Expo is building application for me and we can have a handy URL here that
I will copy and I will go to.
To the website and I will paste it here.
So what is happening here is basically that my account that I have on Expo and whatever you click build,
you will need to assign with your expo account and then you can have some logs here.
So basically the application is, is being built now.
So whatever we will it, it will do it.
We can see some logs there.
Once it will be done, then you can download the the file and the APK file will be ready for you.
As I said, it's not going to be optimized, it's not going to be production ready because the Google
platform won't accept the APK file that hasn't been signed with our key.
So we'll need to do that as well.
But as I said, if you would like to have that process and finish that, that will be the best place
to do an expo.
It is great to help you building that for you.
Otherwise you'll need to handle a lot of things by yourself.
So I would go definitely for Expo because it's much more simpler.