Skip to content

Commit 247845a

Browse files
committed
Development and Deployment
1 parent 0cf2b44 commit 247845a

File tree

2 files changed

+87
-56
lines changed

2 files changed

+87
-56
lines changed

resources/views/docs/mobile/2/getting-started/packaging.md renamed to resources/views/docs/mobile/2/getting-started/deployment.md

Lines changed: 80 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,89 @@
11
---
2-
title: Packaging
2+
title: Deployment
33
order: 300
44
---
55

6+
Deploying mobile apps is a complicated process — and it's different for each platform! Generally speaking you need to:
7+
8+
1. **Releasing**: Create a _release build_ for each platform.
9+
2. **Testing**: Test this build on real devices.
10+
3. **Packaging**: Sign and distribute this build to the stores.
11+
4. **Submitting for Review**: Go through each store's submission process to have your app reviewed.
12+
5. **Publishing**: Releasing the new version to the stores and your users.
13+
14+
It's initially more time-consuming when creating a brand new app in the stores, as you need to get the listing set up
15+
in each store and create your signing credentials.
16+
17+
If you've never done it before, allow a couple of hours so you can focus on getting things right and understand
18+
everything you need.
19+
20+
Don't rush through the app store processes! There are compliance items that if handled incorrectly will either prevent
21+
you from publishing your app, being unable to release it in the territories you want to make it available to, or simply
22+
having it get rejected immediately when you submit it for review if you don't get those right.
23+
24+
It's typically easier once you've released the first version of your app and after you've done 2 or 3 apps, you'll fly
25+
through the process!
26+
27+
<aside>
28+
29+
#### Need help?
30+
31+
This page is here to help you _configure and use NativePHP_ to prepare your app for release; it is not a guide around
32+
the stores. You should consult the [App Store Connect Help](https://developer.apple.com/help/app-store-connect/) and
33+
[Play Console Help](https://support.google.com/googleplay/android-developer/?hl=en-GB#topic=3450769) documentation for
34+
detailed and up-to-date guidance on how to prepare your app submissions and listings.
35+
36+
If you want more hands-on support, we happily work with our [Partners](/partners) to support them releasing their apps.
37+
38+
</aside>
39+
40+
## Releasing
41+
42+
To prepare your app for release, you should set the version number to a new version number that you have not used
43+
before and increment the build number:
44+
45+
```dotenv
46+
NATIVEPHP_APP_VERSION=1.2.3
47+
NATIVEPHP_APP_VERSION_CODE=48
48+
```
49+
50+
### Versioning
51+
52+
You have complete freedom in how you version your applications. You may use semantic versioning, codenames,
53+
date-based versions, or any scheme that works for your project, team or business.
54+
55+
Remember that your app versions are usually public-facing (e.g. in store listings and on-device settings and update
56+
screens) and can be useful for customers to reference if they need to contact you for help and support.
57+
58+
The build number is managed via the `NATIVEPHP_APP_VERSION` key in your `.env`.
59+
60+
### Build numbers
61+
62+
Both the Google Play Store and Apple App Store require your app's build number to increase for each release you submit.
63+
64+
The build number is managed via the `NATIVEPHP_APP_VERSION_CODE` key in your `.env`.
65+
66+
### Run a `release` build
67+
68+
Then run a release build:
69+
70+
```shell
71+
php artisan native:run --build=release
72+
```
73+
74+
This builds your application with various optimizations that reduce its overall size and improve its performance, such
75+
as removing debugging code and unnecessary features (i.e. Composer dev dependencies).
76+
77+
**You should test this build on a real device.** Once you're happy that everything is working as intended you can then
78+
submit it to the stores for approval and distribution.
79+
80+
- [Google Play Store submission guidelines](https://support.google.com/googleplay/android-developer/answer/9859152?hl=en-GB#zippy=%2Cmaximum-size-limit)
81+
- [Apple App Store submission guidelines](https://developer.apple.com/ios/submit/)
82+
683
## Packaging Your App
784

8-
The `native:package` command creates signed, production-ready apps for distribution to the App Store and Play Store. This command handles all the complexity of code signing, building release artifacts, and preparing files for submission.
85+
The `native:package` command creates signed, production-ready apps for distribution to the App Store and Play Store.
86+
This command handles all the complexity of code signing, building release artifacts, and preparing files for submission.
987

1088
<aside>
1189

resources/views/docs/mobile/2/getting-started/development.md

Lines changed: 7 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -138,15 +138,7 @@ Full hot reloading support for Livewire on real devices is not yet available.
138138

139139
</aside>
140140

141-
### Order matters
142-
143-
Depending on which order you run these commands, you may find that hot reloading doesn't work immediately. It's often
144-
best to get the commands running, get your app open, and then make a request to a new screen to allow your app to pick
145-
up the `hot` file's presence and connect to the HMR server.
146-
147-
<aside>
148-
149-
#### Hot reloading config
141+
### Configuration
150142

151143
You can configure the folders that the `watch` command pays attention to in your `config/nativephp.php` file:
152144

@@ -163,58 +155,19 @@ You can configure the folders that the `watch` command pays attention to in your
163155
]
164156
```
165157

166-
</aside>
167-
168-
## Releasing
169-
170-
To prepare your app for release, you should set the version number to a new version number that you have not used
171-
before and increment the build number:
172-
173-
```dotenv
174-
NATIVEPHP_APP_VERSION=1.2.3
175-
NATIVEPHP_APP_VERSION_CODE=48
176-
```
177-
178-
### Versioning
179-
180-
You have complete freedom in how you version your applications. You may use semantic versioning, codenames,
181-
date-based versions, or any scheme that works for your project, team or business.
182-
183-
Remember that your app versions are usually public-facing (e.g. in store listings and on-device settings and update
184-
screens) and can be useful for customers to reference if they need to contact you for help and support.
185-
186-
The build number is managed via the `NATIVEPHP_APP_VERSION` key in your `.env`.
187-
188-
### Build numbers
189-
190-
Both the Google Play Store and Apple App Store require your app's build number to increase for each release you submit.
191-
192-
The build number is managed via the `NATIVEPHP_APP_VERSION_CODE` key in your `.env`.
193-
194-
### Run a `release` build
195-
196-
Then run a release build:
197-
198-
```shell
199-
php artisan native:run --build=release
200-
```
201-
202-
This builds your application with various optimizations that reduce its overall size and improve its performance, such
203-
as removing debugging code and unnecessary features (i.e. Composer dev dependencies).
158+
### Order matters
204159

205-
**You should test this build on a real device.** Once you're happy that everything is working as intended you can then
206-
submit it to the stores for approval and distribution.
160+
Depending on which order you run these commands, you may find that hot reloading doesn't work immediately. It's often
161+
best to get the commands running, get your app open, and then make a request to a new screen to allow your app to pick
162+
up the `hot` file's presence and connect to the HMR server.
207163

208-
- [Google Play Store submission guidelines](https://support.google.com/googleplay/android-developer/answer/9859152?hl=en-GB#zippy=%2Cmaximum-size-limit)
209-
- [Apple App Store submission guidelines](https://developer.apple.com/ios/submit/)
210164

211165
<aside>
212166

213167
#### Skip the prompts
214168

215-
If you are tired of prompts, you can run most commands - like `native:run` - with the arguments and options that will
216-
allow you to skip through the various prompts. Use the `--help` flag on a command to find out what values you can
217-
pass directly to it:
169+
If you are tired of prompts, you can run most commands - like `native:run` - with arguments and options that allow you
170+
to skip various prompts. Use the `--help` flag on a command to find out what values you can pass directly to it:
218171

219172
```shell
220173
php artisan native:run --help

0 commit comments

Comments
 (0)