Episode Transcript
Available transcripts are automatically generated. Complete accuracy is not guaranteed.
Peter (00:02):
What's up, everybody?
Welcome to another episode of
the Compulsive Podcast. I'm yourhost, Peter Widom, and here's
the other host. How are doing,Geoff?
Geoff (00:12):
I'm doing just fine.
Better than you are, it seems.
Peter (00:15):
Yes. And, that is a very
slick segue into Peter's got a
problem this week.
Geoff (00:23):
Perfectly professional
podcasting.
Peter (00:25):
Yes. Yeah. We've pract
you know, we spent hours coming
up with that line. You know? So,we're gonna get into this here,
but I think that this is gonnabe very beneficial for many
folks.
Now we have done episodes beforeon the App Store and app reviews
and everything else, but thisone is personal. I had a
project. I had a crazy notion atthe June on a livestream. Oh,
(00:49):
let's make a game in one monthand ship it at the June. I I
don't know what I was thinking,but, anyway, made the game
already.
And I was like, dang. Look atme. I'm all wet. And then I
submitted it to AppReview, andthings didn't go well. So the
I'm only at the beta one stage,but it was good enough that,
(01:10):
hey.
It's almost complete. Wanted togive it to folks. And I
submitted it, and it gotrejected. And we wanna talk
about the rejection. Now what Imean by that is I'm not angry
about it or self entitled oranything like that.
We want to just sort of gothrough the process of what you
do when you get that rejectionand some ways to sort of
(01:32):
approach it, right? So we'regoing to go with this where I'm
the patient and Geoff's thedoctor. He gets all the money
and I get all the therapy.That's how this is going to
You're
Geoff (01:42):
the patient and I'm the
patient one.
Peter (01:44):
Yeah, yeah, there you go.
The rich patient one probably
driving a BMW. Alright. So let'sget into this. I created a very
simple game, and the idea being,yeah, I gotta I had to do it in
a month.
So take a simple idea, make thegame, and ship it. To sort of
break it down, if you've notseen the live streams, but you
(02:05):
should, right, go tocompileswift.com/livestream. And
the idea is that there is thissaw that slowly comes towards a
beam of wood. You get to movethe beam of wood around to cut
it in the exact right spot whereit's indicated. Yay, you.
Very clever. You score somepoints. And if you don't, you
don't score some points. End ofsixty seconds. How many points
(02:28):
do you have?
Right? It's in three d, made itin Unity. It all looks nice.
It's got sounds and everythingelse. And that is it.
It's a very simple concept. Sentit off to Apple so that I could
get a test flight for folks totry it out. Submitted it for a
public test flight, and that'swhere it got rejected. Now let's
(02:50):
start talking about what do youdo when that happens. Right?
You don't burst into tears.Number one, don't do that.
Right? Go for it, Geoff. What doI do?
Geoff (02:58):
Yeah. Yeah. Yeah. First
step, as as the great Douglas
Adams always said, don't panic.Just just, you know, rejections
happen to everybody.
They happen all the time. And itdoesn't mean your your app is
forever lost. It doesn't meanthat you're kicked out of App
Store. It it it means, you know,you got some work to do. And,
(03:19):
really, you just you need tocome at it with a a calm
demeanor.
Because if you go into it scaredor angry or sad or anything like
that, you're just gonna makelife harder on yourself. So,
really, yeah, step number one isdon't panic. Calm down. You're
gonna get through this. Andthat's really where we wanna
(03:41):
start.
Peter (03:42):
Yeah. Now I wanna be
start off by saying I was calm.
I was fine with it. This was aproject that is a small project.
So, yeah, I was like, okay.
This was a fun project, and mygoal was to make it in a month,
and I did that. And so, youknow, I wasn't, like, hurt or
upset. I was gutted, of course,because, you know, you live with
(04:04):
something, you wanna give it topeople. But it wasn't like, oh
my gosh. You know, this wasgonna make me a millionaire or
anything like that.
It wasn't gonna cost anything.So it really didn't hurt too
much, but it did become aquestion of, well, let's see if
we can turn this around. Mostlyit was Geoff starting off by
telling me saying, tell me whatthey did. Tell me what's wrong.
(04:25):
Show me the email.
What did you do? It's kind oflike that That parent thing.
Yeah. It's like the parent thingwhen you're a kid. Did you break
somebody's window?
What have you done? Right? Youknow? So we've sort of broken
this down into different levels.And like I say, Geoff's Geoff's
gonna be the doctor and help mewith this one.
Right?
Geoff (04:44):
Yeah. We're gonna we're
gonna go through a couple
different levels of rejection,depending on how much work you
actually have to do to to getthrough it. The first level of
rejection, this is gonna beprobably the most common
rejection that you'll see,especially if your app is
already in the store, is Applegoes, hey. You've got one
particular thing. You missed it.
(05:06):
You know, just like something inthe app review guidelines that
you you didn't quite hit. Andwe're gonna tell you exactly
what you need to do to fix it,and and you can just go fix it.
Common one that I've run intoall the times is like, oh,
you're supporting subscriptionsin your app and you forgot to
put a link to your terms ofservice in your Mhmm. App
description. You know, somethingsilly like that.
(05:27):
Apple says you have to do it.You gotta do it. And if you
don't do it, they're gonnareject you, but they're gonna
say, hey, dingus. You forgotthis particular thing. And
that's really easy to get over.
You just you just gotta go doit. It's frustrating that, yeah,
you know, you thought your appwas gonna be ready. You thought
it was gonna be able to go out,and you can't. But you just you
just do it. You just gotta dothe work at that point.
(05:49):
This is a good rejection tohave. If you've gotta get
rejected, the one with concretefixable problems is is the best
level to start with.
Peter (05:58):
Yeah. One that I see more
often than not is people don't
think about, oh, you know, hey,you didn't add a privacy policy.
And like you say, super easy tofix. Right? But that is one that
I've heard.
A lot of people are like, oh,yeah. Privacy policy. It's like,
yep. They they put that therefor a reason.
Geoff (06:18):
Right? They they need it.
Yeah. Level two, just moving a
little step above that is, youknow, some slightly bigger
concerns. You know, Apple wantsa change to how one of your
features works.
Common one here would be, oh,your paywall's just not quite
explaining what you're doing, oryou've got a very basic app and
(06:39):
they're like, well, you know,this is kind of just minimal
functionality. You really needto build a little bit more into
this app to actually make itworth being on the App Store.
Something that's going torequire some amount of work.
It's not just a go and, youknow, quickly paste in a thing
like you have with the level runrejections, but it's something
(07:00):
where you know vaguely theamount of scope that you're
getting into. Now,alternatively, a lot of these
kinds of cases are somethingthat Apple's gotten wrong.
And in that case, you've got a acouple tools that Apple gives
you to work with to help outwith this. These are in your
(07:20):
actual submission. You've gotthe App Store review notes. And
alongside those, you've gotattachments that you can make
there. And so something that canhappen is you can have a problem
that occasionally Apple willreject you for and you go, no.
No. No. That's not really howthis works. Or you've got some
explanation to do for it. Youshould put those in your app
(07:41):
review notes because then Applecan see that in the future and
go, oh, you know, this is maybea problem that they've seen
before.
This is maybe an issue thatthey've had in the past, but we
can have this explanation foryou. One example that I've had
with this in the past was I usedto have an app called Skrull
Notes, and it felt like if youjust launched it, that it was a
(08:03):
very basic, very simple app. AndI would often get rejected for,
you know, minimal functionalitytype rejections. And what I
ended up having to do was putinformation in the review notes
like, no, this app is not just atext box. There is a companion
widget, and here's theexplanation of how to get the
widget in there, and here's howthis works, etcetera, etcetera.
(08:25):
And so being able to have thosekind of common rejections in
your App Store review notes,obviously, that doesn't help you
the first time you get rejected,but coming through in the future
can can prevent these kinds ofrejections again.
Peter (08:38):
And and actually, to to
add in here, when I saw the
rejection email come in and Ihadn't read it, I was out and
about and stuff, and I just sawthe subject line, I actually
thought at first maybe this wasthe problem was I mean, this by
design was a very short, sweet,simple game, and they felt, hey.
You just it's just not enough.Right? This was my my initial
(09:03):
thought. Turned out I was wrong,but I thought this was the one
that got me.
Geoff (09:06):
But, anyway, you have
tools to deal with it. There's
there's definitely a pathforward. It's probably not a
super fun path that you're gonnawant to walk, but you have ways
out of it.
Peter (09:17):
Hey, folks. If you like
what you're hearing in this
podcast and you wanna help thispodcast to continue going
forward and having great guestsand great conversations, I
invite you to become a Patreonsupporter. You can go to
patreon.com/compileswift whereyou will get ad free versions of
the podcast along with othercontent. Alright. Here it is.
(09:40):
The one thing that I cannot dowithout every day, and that is
my coffee. Anyone that knows meor anyone that's listened to any
of my podcasts or anything elseknows that I absolutely cannot
operate without my coffee, and Ilove good coffee. So here's the
deal. I'm gonna give you onefree bag of coffee by going to
peterwhidom.com/coffee. There isa wonderful company out there
(10:05):
that follows the fair tradepractices, helps out a lot of
independent roasters of allsizes, and the operation is
simple.
What you do is you're gonna goto peterwidham.com/coffee. You
sign up there. You get a freebag of coffee sent to you. Yes.
In return, they say thank you tome by giving me some coffee.
(10:27):
But that's not the reason I'mdoing this. The reason I'm doing
this is because I have found somany good coffees that I just
would never have come across,heard about or experienced
without this service. TradeCoffee is just fantastic. You
know, there are plenty of placesout there. We all know them that
supply coffee, good coffee.
(10:49):
You can go to the store, get thecoffee, but there is nothing
better than discovering newindependent roasters and
supporting them, discovering newflavors of coffee, new grinds
for you can set it up. It's verysmart. You tell it the kind of
coffee you like, and over time,it gets better and better as it
trains in on your selections andyour choices and gives you
(11:13):
exactly the coffee you'relooking for and recommending new
ones that that will be verysimilar. Every time I get a new
packet of coffee, I go through,and afterwards, I try the
coffee. I go through theservice, and I say, look.
I loved this coffee. I thoughtthis coffee was okay. Or I say,
look. I've this was really notfor me. And every time I do
that, it makes the service alittle more accurate on the next
(11:35):
selection for me.
So, again, just go topeterwhidom.com/coffee. Get your
free bag of coffee today. Ifyou're a coffee lover, you're
gonna really appreciate thisservice. I have been using it
for years at this point andthoroughly recommend it.
Geoff (11:52):
Moving up to level three,
this is where things get a
little bit hairy. Level three isthese major issues. In this
case, Apple wants a major changeto your business model. They're
like, you can't you can't chargemoney this way. You can't or
they have major concerns withyour apps functionality.
They're like, you know, you'vethey you know, you've got some
(12:15):
kind of thing that's pullingdown code or whatnot. You're
doing something that theyclearly are just like you're not
okay with. Or something alongthose lines where you've built
your app around a certain thingand Apple's saying, nah, this
isn't allowed. This is wherethings yeah. Like I said
earlier, this is this is this isthe level where things get a
(12:35):
little bit more problematic.
And I think you've got reallyfour options that you have at
this point. None of them arevery good options, but we're
we're gonna we're gonna walkthrough them. Alright. Option a
is, yeah, suck it up and stillgo back and rework it. Do you
have to change your businessmodel?
That's probably not ideal. Butif if that's the only chance
(12:58):
that you have to get into theApp Store, maybe you do it.
Like, sometimes it is the pathof least resistance, and you're
just gonna have to deal with it.It's definitely not ideal. You
don't wanna have to do this kindof reworking, but it's an
option.
Option b, put up a fight. Gofight with Apple, disagree with
(13:19):
them, talk to them, say, hey. Iactually believe my app is in
the rules. I believe my app isdoing something that is allowed.
Let me explain to you why thisis actually doing this.
And and in cases this hasworked, I have seen this work in
the past where people have said,hey, you're saying that I'm
rejected for this reason. I'mactually falling under this
(13:40):
particular loophole andtherefore, my app should be
allowed. This is not going to bea quick fight. This will often
take days or weeks to getthrough, but it is winnable
sometimes. And so it's an optionthat you you have to to deal
with Apple that way.
Peter (13:59):
Yeah. Because, I mean, it
can just be a simple
misunderstanding. Right?
Geoff (14:03):
Yeah. Absolutely.
Probably not a simple
misunderstanding, but it can bea misunderstanding. It can be
that the the rules just they areambiguous or something like
that, and you really need tospend time working through it.
Peter (14:17):
And just wanna point out
here, you know, we're we're
saying fight with Apple and butat all times be polite, right?
If you come off wrong and that'sopen to interpretation, then
you're only hurting yourchances, right? So at all times
be professional, be polite andwork with them, right? When we
(14:41):
say fight, we don't mean takethe stance of they're wrong. We
mean fight for why you're right.
Geoff (14:46):
If you do want to take
the stance that they're wrong.
If you do want to take thestance that they're wrong, we've
got our next option here, whichis Apple says this doesn't work.
History is said otherwise, andthat's go run to the press. Go
run to your social media. Goclaim up and down how persecuted
you are and why your appdeserves to be in the App Store
(15:09):
and and why you're you're being,you know, silenced to buy Apple.
This is not gonna make anyfriends. A 100%, this is not
gonna make any friends. Again,history has shown that it does
occasionally work. If you throwenough of a fit, Apple will shut
up and listen to you. You'renever gonna get featured ever
again if this is the case.
But it it if you really feellike you are in the right, if
(15:33):
you feel like you are doing theright thing and Apple is just
being onerous for some reason oranother, and you feel like you
can make enough noise, you know,getting getting your voice out
there is is is never easyanyway. But if you have that
capability, it is another optionto to go out there and say,
(15:55):
like, no. I think I'm right, andI'm gonna fight this in the
court of public opinion.
Peter (16:00):
Yeah. And I and I think,
you know, humorous side, but
also somewhat true, like yousay, is, you know, if you're
gonna go this path and you win,really celebrate the win because
it may be the only app you everget in the store.
Geoff (16:16):
Maybe your last. Yeah.
Yeah. And last, option d. Always
an option.
This is one of my favoriteoptions in life. Give up. Just
just, you know, sometimes theapp really isn't worth it. And
this is a very painful outcometo have put a lot of work into
an app and realize that, yeah,it really just is not worth the
(16:38):
fight. I did an app a coupleyears ago for a local business
of mine, and I said, like, hey,know, I'm putting this together.
And Apple rejected me forminimal functionality and said,
basically, like, you've gottaadd all these extra features to
your app, which makes it morethan I think the bigger concerns
the level two level. This wasmore like, you need more than
half of the app to be added tothis app. And I'm like, no. I'm
(17:01):
not doing that. And so, yeah, II that was what happened.
Like, that app never shippedbecause I just said, you know
what? It's not worth fightingfor this app.
Peter (17:09):
Yeah. I I I think it's
unlikely. You know, obviously,
we are talking primarily to kindof indies here, but it's
unlikely whatever you have is sogroundbreaking that it's worth
ruining everything else over.
Geoff (17:24):
In this case, I was very
much like, yeah, I can sit here
and I can picker about this oneparticular app, but I've got
four other apps that I amworking on, that I'm
maintaining, that I need to keepworking on. It's not worth it.
I'm just gonna deal with it andsay, this app is never gonna
ship. I'm sorry. It would havebeen a cool app to have out
there, but I don't wanna get ina fight with Apple over it.
Peter (17:45):
Yep. Yeah. I I agree. You
know, I I think just channel
your energy somewhere else andand do something cool with it.
Right?
Geoff (17:53):
And that brings us to
level four, and this is the
level that Peter has foundhimself in. This is the Apple
Peter (18:00):
Makes his sound terrible.
Geoff (18:02):
Yeah. Exactly. This is
this is the level where Apple
just says, talk to the hand.They're they they show up, they
come back, they reject you, andthey say, you violated rule x
dot y, done. And they just tellyou nothing else.
They they give you no otherinformation. They go, you you
are out of here for some untoldreason that we we have decided
(18:24):
that we hate you today. And thisis really difficult to deal
with. I I I'm not gonna lie. Andand Peter can obviously clarify
right now that, you know, you'reprobably not feeling great about
your chances.
Peter (18:37):
Yeah. Oh, yeah. That's
that's fair to say. Right?
Geoff (18:41):
But as as always, you do
have options here. And how
successful these options aredepend on how successful these
options are depend on howbelligerent Apple wants to be at
any given point, but it's atleast worth trying. Step one,
respond and ask forclarification. Oftentimes, they
will reject you for somethingsimple, and you just need to go,
(19:03):
I don't I don't know what youmean, man. Tell me what it is
you actually want me to fix.
Because if they've told younothing, then it it makes it
difficult for you to be able todo anything. So step two, if you
didn't get much of a responsefrom Apple on the actual reply
or if you need more informationthere, it is actually possible
(19:24):
to get app review on the phone.And there are public ways of
doing that that we will link toin the show notes. But that is a
very good way to kind of have aconversation with them. Rather
than going just back and forthin the AppReview rejection area,
get on a phone with AppReviewand say, hey, I need help.
(19:45):
I I really need you to helpexplain what it is that you need
me to fix.
Peter (19:49):
Because I think that's
something that people don't
often think about. Right? Imean, it it's not something to
be fair every day. You're like,oh, wait. I can get Apple
whoever on the telephone.
It doesn't immediately come tomind. Right? In a world where we
we chat to AI bots and sendemails and so on, it's like,
hey. You know what? Some peoplestill use the telephone, and
that's cool.
Geoff (20:08):
Apple has a pretty well
deserved reputation for being a
little opaque, but AppReview isactually somewhat less opaque
where you can actually get aperson on the phone and try to
get help from them that way. Andthen step three, if you have
talked to Apple via themessaging, if you've talked to
(20:29):
Apple again via the phone, andneither of those is really
getting you unblocked, there isthe appeal process where you
say, you know what? I thinkyou're wrong, or I think, you
know, you're you're blocking mein a way that doesn't make any
sense. And you submit an appealand it goes to a app review
board and they will take time todeliberate on your particular
(20:54):
case. But after a few days, theywill return you a kind of final
judgment.
The problem with this approachis that final judgment can be
you're still shrewd. And so itit is very much the the pull in
case of emergency approach. Andso you you probably don't wanna
do it unless you really are introuble and really wanna get
(21:15):
this app through, but it is akinda your final step with
dealing with Apple when they arereally wanting you gone.
Peter (21:25):
And I do want to add
here. So, you know, I have dealt
with Apple obviously, and I havedealt with Google. And I will
say unscientifically,experiences with Apple have been
a lot more rewarding than theywere with Google. It was
exceptionally hard to get anykind of meaningful information
(21:49):
at all from Google. And so Iactually swing my vote in favor
of, hey, you know what?
Like you said, the app reviewfolks and that, you know, they
want you to succeed, right? It'sin their best interest as well.
But, definitely for me, Googlehas been the harder one to get
(22:09):
any response from that's useful.
Geoff (22:13):
Alright, Peter. So we've
discussed all of the various
approaches to how to getyourself unrejected. What are
you gonna do?
Peter (22:20):
I'm gonna get myself
unrejected. I'm just gonna I'm
Perfect.
Geoff (22:24):
Alright. Wrap it up.
Peter (22:25):
Yeah. I'm just gonna,
reply to the to the review and
say, listen to this podcastepisode. It totally explains why
I should should be in the store.No. Just kidding.
So well, here's what I'm gonnado. Because as you said, I'm
sort of in that level four zonewhere the email I got back gave
me
Geoff (22:45):
It just it just says no
in the Right?
Peter (22:48):
It it told me which
section it felt I had fallen
foul of, and that was it. Noexplanation or, you know, that
was basically it. And and theone that it did didn't make any
sense because there was nocontext to the explanation. So
(23:13):
I'm actually gonna reply backand just ask them, hey, can you
please explain no, I'm not evengoing put it that way. Can you
please help me understand how Ihave fallen foul of this
particular rule so that I canimprove the situation and see
(23:33):
what they say.
Because there's really at thispoint, you know, it's that thing
of I can't argue anythingbecause I don't know what I'm
supposed to be arguing for. Doyou know what I mean? And so I
think I have to start by saying,please, can you elaborate a
little more? And then if theycome back with something that
makes perfect sense, you know,we take it from there. Right?
(23:56):
It's either like, okay. You knowwhat, Apple? You're right. And I
could fix this, and I can go dowhatever to fix it. Or maybe
what they're saying is, yeah.
You know, it's not worth it.You're right. And I think that
we gotta gotta give that achance. Right? Because when they
you know, it really is that caseof when someone tells you
(24:17):
nothing, what do you do withthat?
Right? It's like going to courtand and before anybody says
anything, the judge says you'reguilty. And you're like, wait.
What what now? You know, whatwhat am I what am I guilty of?
Can we talk about this? Can youexplain it? And that's kind of
where I feel at the moment. SoI'm gonna try that. Okay.
(24:40):
So while I'm struggling with allof this and all of my life
problems, Geoff, where can theyfind you?
Geoff (24:47):
You can find me and
everything that I do at
cocoatype.com, and I'm gonnastop promising that I have a
redesign for that website soonbecause I still haven't shipped
it.
Peter (24:56):
It's not got worse. Yep.
And you can find me at
peterwitham.com. And of course,you can find this podcast at
compileswift.com. Folks, if youwanna reach out to us, you know,
there is a contact form oncompileswift.com or, we pretty
pretty much have that addresswrapped up on nearly all the
social networks.
(25:16):
I've got compile swift, so justreach out. We would love to hear
from your experience. Hang on.And, if you want to go the extra
step, hey, you know what? We gota Discord and put a link in the
show notes.
Come and join us on the Discordwhere we talk about this and
lots of other developmentrelated stuff. And we're all
there to try and help each otherthrough it, including problems
(25:37):
like this, which can be a realpain. That's it, folks. Speak to
you next time. See you.