Read the transcript
Jeroen Leenarts: Welcome to app
force episode 89. My name is
Lena and I've been developing
software for over 20 years
developing iOS apps for over 10
years. And I'm running the Dutch
cocoa has for over nine years.
If an iOS app developer you
should listen to my podcast,
because it will keep you updated
on interesting articles
conference and events you might
not have heard about. In this
episode, I'm going to talk about
PSA. iOS 16 is a huge
opportunity to promote your app,
lock screen widgets in Swift UI,
building widgets for iOS
applications with which gift and
swift UI and Beginner's Guide to
navigate the split view history
through for iOS 60 custom
metrics with metric eight, how
to capitalize the first letter
in Swift, extension kit and X PC
sharing cross platform code in
Swift UI apps. I prepare my
podcast episodes by scripting
things out nowadays, it helps me
collect my thoughts and make
sure I do a better job printer
record, a better job recording
results in lots less editing,
which makes me a much happier
podcaster audio editing is an
enjoyable process, but it can
take loads of time. The process
is simple at first, make a
selection of links from a list
of unread articles and 50. The
first selection pass into a
second round of review, and then
select anywhere between five to
10 articles for inclusion into
my podcast articles making the
second cut, I'll open up in my
web browser and to use this
handy extension that allows me
to copy each open tabs link as
markdown, the resulting markdown
I paste into my episodes nodes
and start reading take notes as
I go. I often copy paste parts
of an article introduction for
inclusion in my scripts. I
discovered that spending more
time in my episode node
preparation saves me heaps of
time. This week, I also gave my
talk at 360. If, in fact this
episode was prepared, recorded
and edited all from my hotel
room using my laptop, and a very
portable DGI make. The talk I
did was titled building a famous
fifth backhand integration with
authentication and
authorization. The abstract of
the talk was when integrating
with many online services,
there's often a bit of server
side glue you need to create
yourself streams chat service is
no difference. In this talk, you
will will focus on what you need
to create to authenticate and
authorize backends that
integrate with a service
provider. It doesn't matter
which stream service is only
used as an example of a third
party service you might want to
integrate with. The core of the
talk will be about how to create
a favorites with back end for
your app and your third party
service. We will cover the
basics of setting up a favorite
fit project. And after that
integrating with third party
service. Once that's done, some
form of authentication and
authorization will be added.
sounds neat right? All the
material is available at app
force one.net/idf link in the
show notes to 360 IDF has been
an enjoyable experience thus
far. I still have the final day
of the conference ahead of me
when I record this, but I must
say it is awesome seeing so many
familiar faces. The weird thing
is I'm seeing most of them for
the very first time real life.
Special shout out to Josh as I'm
Michaela and Leo, it is great to
finally be able to meet you for
real, what it also notices how
different conferences are. I've
been to app DEF CON swift heroes
cyclorama B, and 360 if he had
thus far, and each had a totally
different vibe, and each had his
own strengths. Experiencing
these conferences reaffirmed my
resolve to push for another
edition of the Dubai press
conference in November, I got
the first offer letter from a
venue and I'm awaiting the
second to make sure I get a good
deal on the whole thing. A fun
thing to know about organizing
an event rooms a small line item
compared to the catering. Once
you have to find your books, it
is time to do some final number
crunching and decide on the
ticket price. It will probably
be a lot lower than you might
expect, which makes me super
happy. Speaking of things making
me happy at 360 If
I experienced several case of
getting actual in person
feedback from people listening
to my podcast, how they enjoy
it, and that it's a staple on
their playlist such an amazing
gift to receive. Anyways, let's
dive into the first article of
the week. Public service
announcements, iOS 16 is a huge
opportunity to promote your app.
Not much to do or add to what
Phillip shares with us. The new
iOS release is a period when
both Apple and depress love to
feature and cover all kinds of
apps. And users are excited to
try out new ones and have
features that weren't possible
before. So if you have any
ambition with your app, you
should prioritize marketing and
promotional activities around
the upcoming iOS 16 release you
will get the most bang For your
book, so to speak, so better get
started. And the next two
articles by Majeed and Natasha
line have really well with what
Philip just said. lockscreen,
which is in Swift UI and
building, which is for iOS
application with which kit and
swift UI. Both of them shared an
article but which it gets much
it goes deeper into lockscreen
widget specifically, while
Natasha talks about which is in
general, starting with Irish 14,
Apple introduced widgets that
allows users to make a piece of
the apps content available on
the homescreen one of the most
requested features for iOS was
customizable lock screens and
with iOS 16. Apple will deliver
on this, we can populate our
lockscreen with Glasspool
widgets, implementing a lock
screen, which is straightforward
because the API shares the same
code with homescreen widgets. I
think homescreen which is a
cool, I use them every day, and
Lakshmi widgets will only make
widgets better. So let's get
started programming them so they
can be part of marketing push
related to the release of iOS
16, shall we? That's three
articles down already. Next up a
beginner's guide to navigation
split view in Swift UI for iOS
16 In iOS 16, other than
introducing the new navigation
stack, Apple also released a new
few container names navigation
split view for developers to
create two or three column
navigation interfaces. If you
want to build UI similar to the
stock Mail app, you should check
this out as a split view
components. While navigation
split view is more suitable for
iPad OS and Mac OS apps, you can
still use them on apps for the
iPhone, the view component
automatically adapts itself for
iPhone. instead of displaying a
multi column interface it
creates a single column
experience. The new Neff K split
view comes with various options
for you to customize its
appearance and operations. You
can also change the columns
width and programmatically show
and hide the columns. In his
tutorial, Simon will create a
three column navigation by using
navigation split view. Article
number five is by Adam rush. I
actually saw his presentation on
this very topic at 360. If
custom metrics with metric hits
metric, it is a new framework to
monitor app performance and
battery usage within your
application. It was released in
2019. One of the fantastic
things you can do with metric it
is track custom metrics using
Apple's API so that you can
consume this data and make
better technical or engineering
decisions based on results.
Let's get started by going over
a real life example. You are
about to start working on a
significant new feature in your
app. You don't know how your
users react, and it will touch
some critical parts of your
applications logic. You'd like
to roll out this feature slowly.
And you'd like to monitor the
performance of this feature and
how it will affect your app's
performance. The question is,
how are you going to achieve
this? Well, it's possible with
metrics. So rune has a nice
article answering the question
of how to capitalize the first
letter in Swift. Not only does
he capitalize the first letter
of each word in the string, he
also shows us how to capitalize
the first word of a sentence,
all using built in Swift
features, to more articles to go
and next up is extension kit and
SPC Max mercy cote right
extension kit makes extensive
use of X PC, there are x PC
connections all over the place.
There's per extension X PC
interface. But there's also a
per view X PC interface. This
can make a lot of API's to
manage it's critical to as this
will make up the foundation of
access good system. So to be
successful with extension kit,
you have to work really closely
with X PC.
Let's take a look at how we can
do that. This article is part
two of a series of articles on
the topic of extension kits. And
we are already at eight and last
article of this episode sharing
cross platform code in Swift UI
apps. The main appeal of
building apps and swift UI is
being able to share UI across
platforms, in particular iOS and
Mac OS, it is not perfect. And
you often have to do some if OS
checks, but when it works, it is
truly great. Before swift two
hours around, you could already
share a lot of on UI code
between iOS and macOS. Many of
the system frameworks are
available on both platforms, for
example, foundation and core
data. Occasionally, there are
API differences, but they rarely
impose significant burden. The
biggest issue when working on a
cross platform swift UI app is
why you need to drop into
advocates on Mac OS and UI kits
on iOS. Often the API should
meet because they are absent
from Swift UI are simply
entirely different. However,
sometimes the API's are nearly
identical, but just different
enough to require branching into
platform specific code paths. In
his article, Jesse squires
explains how you could approach
finding a codebase that shares
as much to code as reasonably
possible between iOS and Mac. So
those were the articles for this
week. And it seems DJI make has
worked out well, and I was able
to record an episode. If you
have any feedback, please send
me a message to Twitter. My DMS
are always open and don't
forget, you can buy me a coffee
link for that in the show notes.