When iOS framerate lags, are TouchPhase.Begans getting lost?

I think they are. This is not good because I’m detecting ‘swipes’ for movements, and it is only in
TouchPhase.Began that starts a swipe. I though every touch would have one frame in which its phase was “began”.

But it seems like what happens is if it drops a couple of frames where
the touch should have began, it goes straight from touch count 0 to the first recorded state being “Moved”,
as a result the swipe doesn’t count, so the turn doesn’t happen, so the player runs into something and dies- again- and
says “omg this game sucks” and rates it one star and deletes it.

Can someone confirm that this is what’s going on, and is there a better way to check for swipes that will always work?

Yeah I think you are right. I have a manager object that sends a began event if the phase is Began or I have a Move or a Stationary for a finger I have never seen before. Similarly I also do the same for Cancel if I am missing the fingerId and my last state was active.