WEBVTT

1
00:00:00.000 --> 00:00:02.920
Okay, so in this video, I'll just tell you,

2
00:00:02.920 --> 00:00:06.700
let's say we've got all of our bugs worked out or ready to go.

3
00:00:06.700 --> 00:00:09.380
We have run a test project.

4
00:00:09.380 --> 00:00:10.980
So I've got one right here.

5
00:00:10.980 --> 00:00:12.460
I've opened it up.

6
00:00:12.460 --> 00:00:15.200
I've tested it, feel like it's pretty good.

7
00:00:15.200 --> 00:00:17.140
At this point, we can go down to

8
00:00:17.140 --> 00:00:20.660
settings and we can go down to mobile deployment.

9
00:00:20.660 --> 00:00:23.420
So there's two options here.

10
00:00:23.420 --> 00:00:26.140
We can deploy it to the App Store,

11
00:00:26.140 --> 00:00:27.980
which is our main thing we want to,

12
00:00:28.180 --> 00:00:31.860
that's where we're going to send it, test it on an iPhone.

13
00:00:31.860 --> 00:00:35.460
We can also test it on an Android,

14
00:00:35.460 --> 00:00:38.220
which platform are you on?

15
00:00:39.220 --> 00:00:40.500
Android.

16
00:00:40.500 --> 00:00:42.060
Okay, okay, cool.

17
00:00:42.060 --> 00:00:46.180
So Android is easy because everything in Flutter Flow

18
00:00:46.180 --> 00:00:47.860
is built for Google.

19
00:00:47.860 --> 00:00:49.860
It's on Google Firebase.

20
00:00:49.860 --> 00:00:51.860
Flutter is a Google coding language.

21
00:00:51.860 --> 00:00:54.580
So you could just click download APK

22
00:00:54.580 --> 00:00:57.140
and immediately have this.

23
00:00:57.140 --> 00:01:00.700
You can also go to the top here and just hit download APK

24
00:01:00.700 --> 00:01:03.140
and just push this right to your phone

25
00:01:03.140 --> 00:01:05.140
and test it on a real device.

26
00:01:06.460 --> 00:01:09.220
For iOS, there's a bunch of keys

27
00:01:09.220 --> 00:01:10.300
and things that have to happen.

28
00:01:10.300 --> 00:01:13.860
So the process here is we always want to increment

29
00:01:14.900 --> 00:01:17.980
the build number to plus one.

30
00:01:17.980 --> 00:01:20.660
And then depending on if we've added,

31
00:01:20.660 --> 00:01:24.380
just a few bug fixes, I would bump this to three.

32
00:01:24.380 --> 00:01:25.860
If we were adding a feature,

33
00:01:25.860 --> 00:01:29.300
I would bump this to five and then back to zero.

34
00:01:29.300 --> 00:01:31.020
For this one, we actually haven't done anything.

35
00:01:31.020 --> 00:01:33.860
I'm just going to do another build just for the fun of it.

36
00:01:33.860 --> 00:01:36.020
And then we just hit this, oh, sorry.

37
00:01:36.020 --> 00:01:38.620
And one little thing I found works better

38
00:01:38.620 --> 00:01:41.060
that I just click off the page and click back on.

39
00:01:41.060 --> 00:01:44.820
And it seems to save these numbers better

40
00:01:44.820 --> 00:01:46.860
than if I just immediately hit deploy.

41
00:01:48.460 --> 00:01:52.780
That may just be a placebo effect that makes me feel better.

42
00:01:52.780 --> 00:01:57.060
So we hit deploy and you can also deploy this.

43
00:01:57.060 --> 00:01:58.580
It's not going to actually deploy it

44
00:01:58.580 --> 00:02:00.780
and it's going to fail right here.

45
00:02:00.780 --> 00:02:02.940
But what it'll do is it'll update this APK

46
00:02:02.940 --> 00:02:05.340
to be the latest with that build number

47
00:02:05.340 --> 00:02:06.340
and that version number.

48
00:02:06.340 --> 00:02:10.259
So if I, because whenever I click here,

49
00:02:10.259 --> 00:02:13.660
it's just going to download the latest built one.

50
00:02:13.660 --> 00:02:16.020
So if you want to get all those changes we just made,

51
00:02:16.020 --> 00:02:17.300
hit the deploy,

52
00:02:17.300 --> 00:02:19.700
and then you can always click check status here.

53
00:02:20.700 --> 00:02:22.300
And that's saying it's finished.

54
00:02:22.300 --> 00:02:23.780
I don't think it's even deployed.

55
00:02:23.780 --> 00:02:25.900
It's not even been submitted yet.

56
00:02:26.820 --> 00:02:27.700
So we'll let it come back.

57
00:02:27.700 --> 00:02:28.900
And I think if you-

58
00:02:28.900 --> 00:02:29.980
How long does it take?

59
00:02:30.980 --> 00:02:35.380
So this can take about 10 to 15 minutes to build it.

60
00:02:35.380 --> 00:02:37.340
And then, you know, another five to 10 minutes

61
00:02:37.340 --> 00:02:39.140
for it to show up in the app store.

62
00:02:40.300 --> 00:02:42.580
So the workflow as well, you know,

63
00:02:42.580 --> 00:02:45.100
whether you're on Android or iOS,

64
00:02:45.100 --> 00:02:46.220
you're on a Mac though, right?

65
00:02:46.220 --> 00:02:47.060
Or are you a PC?

66
00:02:47.060 --> 00:02:48.940
No, I actually have a PC.

67
00:02:49.580 --> 00:02:50.420
I might switch.

68
00:02:50.420 --> 00:02:55.260
I'm really like wanting to be different.

69
00:02:55.260 --> 00:02:57.460
Complicated, but I might really switch.

70
00:02:57.460 --> 00:02:58.300
Yeah, I need to-

71
00:02:58.300 --> 00:03:02.260
But I'm pretty sure we switched Lucien from,

72
00:03:02.260 --> 00:03:04.380
he was on a, he was actually on Linux,

73
00:03:04.380 --> 00:03:05.540
I think, when he started.

74
00:03:05.540 --> 00:03:06.500
Yeah, I have Linux too.

75
00:03:06.500 --> 00:03:07.660
Now he's got a little Mac,

76
00:03:07.660 --> 00:03:09.980
he's got a MacBook Air and I think he likes it a lot.

77
00:03:09.980 --> 00:03:13.860
So we log into this, you know,

78
00:03:13.860 --> 00:03:15.620
we'd be in the developer account

79
00:03:15.620 --> 00:03:18.460
and here we could choose between all of our clients

80
00:03:18.940 --> 00:03:21.220
up here, we jump into my apps.

81
00:03:22.260 --> 00:03:26.300
I would come into the app that I wanted to work on

82
00:03:26.300 --> 00:03:28.500
and then go to test flight

83
00:03:28.500 --> 00:03:33.500
and that will actually publish right into this version.

84
00:03:35.060 --> 00:03:36.420
And then the final thing you'd want to do

85
00:03:36.420 --> 00:03:37.900
is you're going to get this little like

86
00:03:37.900 --> 00:03:39.820
missing compliance issue.

87
00:03:40.700 --> 00:03:43.020
I haven't worked out how this needs to be solved

88
00:03:43.020 --> 00:03:43.900
on Flutter flow side,

89
00:03:43.900 --> 00:03:45.820
but the way you solve it is you hit manage,

90
00:03:45.820 --> 00:03:47.740
you hit standard, you hit,

91
00:03:47.820 --> 00:03:48.860
is it going to be in France?

92
00:03:48.860 --> 00:03:52.260
So sorry, it's not going to be in France.

93
00:03:54.140 --> 00:03:56.180
Why is that so complicated?

94
00:03:56.180 --> 00:03:57.740
Why in France?

95
00:03:57.740 --> 00:03:58.580
I don't know why.

96
00:03:58.580 --> 00:04:01.900
Yeah, it's probably some EU, you know, law

97
00:04:01.900 --> 00:04:03.820
that something about privacy.

98
00:04:04.980 --> 00:04:07.940
So we just do that to get it through this little test.

99
00:04:07.940 --> 00:04:09.980
And at this point, it'd be available to download

100
00:04:09.980 --> 00:04:13.140
on your iPhone for testing.

101
00:04:13.140 --> 00:04:16.660
There are much faster workflows

102
00:04:17.540 --> 00:04:18.380
if you have an Android

103
00:04:18.380 --> 00:04:20.540
and I do have an Android for testing.

104
00:04:20.540 --> 00:04:23.380
So if you were going to be extensively doing this

105
00:04:23.380 --> 00:04:25.060
and I'll probably make this in a different video,

106
00:04:25.060 --> 00:04:30.060
there's a way to push the code to a GitHub repository

107
00:04:30.140 --> 00:04:33.220
and then pull it down to your local machine

108
00:04:33.220 --> 00:04:36.860
and then immediately run it through Android Studio

109
00:04:36.860 --> 00:04:38.380
on your device.

110
00:04:38.380 --> 00:04:42.100
And that from like push code to showing it up on your device

111
00:04:42.100 --> 00:04:44.420
you can get it to about two minutes,

112
00:04:44.420 --> 00:04:46.540
which is pretty cool.

113
00:04:47.420 --> 00:04:48.980
So that's where I'm like, I'm editing stuff over here.

114
00:04:48.980 --> 00:04:51.180
And from any page, you can just jump up here,

115
00:04:51.180 --> 00:04:54.500
push the repository, you know, give your commit notes,

116
00:04:54.500 --> 00:04:57.580
hit push, and it pushes it to that branch immediately.

117
00:05:00.000 --> 00:05:03.120
that you now have a backup of all your code from Flutter Flows.

118
00:05:03.120 --> 00:05:06.440
That's a really big deal.

119
00:05:06.440 --> 00:05:08.040
Because most of the no-code tools

120
00:05:08.040 --> 00:05:10.880
don't let you take your code, the source code,

121
00:05:10.880 --> 00:05:14.080
and go and do something else with it in the future.

122
00:05:14.080 --> 00:05:17.560
So I do that on all of our projects.

123
00:05:17.560 --> 00:05:24.760
And I just do 2.4.2, that's 157, push.

124
00:05:24.760 --> 00:05:26.880
And it's just going to push that up to GitHub.

125
00:05:26.880 --> 00:05:28.280
Now we have a backup.

126
00:05:28.280 --> 00:05:33.200
Let's say, like, Flutter Flow loses something,

127
00:05:33.200 --> 00:05:34.560
or, I mean, not that they would.

128
00:05:34.560 --> 00:05:36.920
But let's say we shut down our account,

129
00:05:36.920 --> 00:05:39.080
or they go out of business, or something.

130
00:05:39.080 --> 00:05:42.680
Like, all of our project is now on GitHub.

131
00:05:42.680 --> 00:05:44.960
And it's backed up to GitHub to another source.

132
00:05:44.960 --> 00:05:49.000
So that's just a good piece of mind that it's set up.

133
00:05:49.000 --> 00:05:54.080
So before deploying, you're always pushing to GitHub?

134
00:05:54.080 --> 00:05:54.840
Typically, I will.

135
00:05:54.840 --> 00:05:57.560
That's a good, that would be a good workflow, yes.

136
00:05:58.560 --> 00:06:00.840
All of our projects have that set up already.

137
00:06:00.840 --> 00:06:03.520
So it would be smart to do that.

138
00:06:03.520 --> 00:06:05.680
I wouldn't do it on this project yet,

139
00:06:05.680 --> 00:06:07.760
because we'd obviously want to fix the bugs

140
00:06:07.760 --> 00:06:09.120
before we do any of that.

141
00:06:09.120 --> 00:06:12.760
And then the last thing as well, like, we did the,

142
00:06:12.760 --> 00:06:14.480
that's all mobile.

143
00:06:14.480 --> 00:06:16.400
And if you go down to GitHub here,

144
00:06:16.400 --> 00:06:19.200
this is where you would actually tell it which repository

145
00:06:19.200 --> 00:06:21.520
to push code to.

146
00:06:21.520 --> 00:06:24.360
And then the last piece is just the web publishing.

147
00:06:24.360 --> 00:06:28.280
So only for this particular app are we doing this.

148
00:06:28.280 --> 00:06:29.640
But you would just see here, like, oh,

149
00:06:29.640 --> 00:06:32.040
the last time it was deployed was six days ago.

150
00:06:32.040 --> 00:06:34.320
I just hit publish, and off it goes,

151
00:06:34.320 --> 00:06:37.560
pushing it right now to the web.

152
00:06:37.560 --> 00:06:42.520
So this part is very easy, I think.

153
00:06:42.520 --> 00:06:44.640
And it's very manual.

154
00:06:44.640 --> 00:06:49.760
So you can have each one just deployed as needed.

155
00:06:49.760 --> 00:06:53.600
And so, yeah, that should kind of send this off like this.

156
00:06:53.600 --> 00:06:56.120
And if I check build status, it should be preparing now.

157
00:06:56.120 --> 00:06:58.080
And if I check build status, it says building.

158
00:06:58.080 --> 00:07:01.560
So these are both in progress right now.

159
00:07:01.560 --> 00:07:04.360
And I can come back here and check in 10, 15 minutes

160
00:07:04.360 --> 00:07:04.880
and see.

161
00:07:04.880 --> 00:07:07.800
And then it should show up right into the test flight

162
00:07:07.800 --> 00:07:10.160
here when it's done.

163
00:07:10.160 --> 00:07:14.000
I would say, as the developer, to when

164
00:07:14.000 --> 00:07:16.560
you are finished a version, when you're finished building it,

165
00:07:16.560 --> 00:07:17.640
when you feel like, cool, I'm going

166
00:07:17.640 --> 00:07:20.320
to hand this off for the day, or I'm handing it back

167
00:07:20.320 --> 00:07:23.120
to someone to go test, or you added a new feature,

168
00:07:23.400 --> 00:07:25.320
go ahead and just send the build.

169
00:07:25.320 --> 00:07:29.200
Send the build to the App Store, because then me or Carolina

170
00:07:29.200 --> 00:07:32.240
can just, with one tap, we can just pull it into our device

171
00:07:32.240 --> 00:07:34.400
and start testing it.

172
00:07:34.400 --> 00:07:36.800
It's a little painful as someone who's testing it.

173
00:07:36.800 --> 00:07:38.440
I know Carolina does this as well.

174
00:07:38.440 --> 00:07:41.360
It's like, you guys are like, oh, this new features

175
00:07:41.360 --> 00:07:43.920
version is working, or whatever.

176
00:07:43.920 --> 00:07:45.600
And then we go into it, and you're like, oh,

177
00:07:45.600 --> 00:07:46.440
we have to deploy.

178
00:07:46.440 --> 00:07:48.480
And then we have to wait 15 minutes, 20 minutes.

179
00:07:48.480 --> 00:07:51.800
So typically, my workflow is push it to the App Store

180
00:07:51.800 --> 00:07:53.000
when I'm done for the day.

181
00:07:53.000 --> 00:07:54.800
And then I can just close out of everything,

182
00:07:54.800 --> 00:07:57.480
and it will just push it when it's done.

183
00:07:57.480 --> 00:08:01.120
And then Carolina can even pick it up here and just

184
00:08:01.120 --> 00:08:02.480
do the quick compliance thing.

185
00:08:02.480 --> 00:08:05.880
And then she can test it off on her phone immediately.

186
00:08:05.880 --> 00:08:08.360
But that way, if we're going back and forth,

187
00:08:08.360 --> 00:08:10.280
just passing it between team members,

188
00:08:10.280 --> 00:08:13.760
it's good if you just leave it.

189
00:08:13.760 --> 00:08:16.240
Since this is kind of the last good thing, you hit Deploy.

190
00:08:16.240 --> 00:08:18.840
You can hit Deploy on both of these and the repository.

191
00:08:18.880 --> 00:08:22.280
It's kind of like just closing out for the day,

192
00:08:22.280 --> 00:08:26.960
committing all your changes somewhere.

193
00:08:26.960 --> 00:08:28.120
That's a good process.

194
00:08:28.120 --> 00:08:29.400
Workflow, yeah, for sure.

195
00:08:29.400 --> 00:08:30.960
Yeah.
