Salut,
CakePHP est codé en PHP (d'où son nom), une application Android en Java et une application iPhone en Objective-C. Tu vas donc devoir maîtriser trois langages. Idem pour la base de données, CakePHP utilise MySQL par défaut, Android et iPhone SQLite. Ce sont quand même deux bases de données relationnelles donc le fonctionnement sera similaire.
Tu as deux moyens de gérer ça, où tes applis sont indépendantes et font des appels au serveur de manière ponctuelles, où elles sont totalement dépendantes de ton serveur.
Dans le premier cas, l'avantage c'est que tu travailles en mode déconnecté, au lancement de l'application, tu récupères les nouvelles valeurs crées sur le serveur, tu envoies les nouvelles valeurs crées sur le mobile. Ensuite toute l'intelligence de ton application est dans ton application elle même. Tu as ainsi une notion de notification, push à prendre en compte (un peu compliquée pour un débutant). Par ailleurs, tu codes la même chose deux fois, une fois sur le serveur, une deuxième sur le mobile.
Pour le deuxième cas, tu appelles l'API à chaque fois avec récupération des entrées de la base et affichage. Techniquement, ton intelligence est sur le serveur, et ton mobile n'est qu'un écran affichant ces valeurs. Le soucis c'est que sans Internet on ne fait rien. De plus l'application sera très looooooongue du fait de ces appels.
Concrêtement, les applications les plus fonctionnelles sont celles codées dans le 1er cas.
Pour faire le dialogue client/serveur, il te faut créer une API. Tu peux donc utiliser l'architecture REST pour appeler ton api via des url. Tu peux regarder des api bien connues comme Twitter, lastfm ou Instagram par exmple, pour comprendre le principe d'une API et t'en inspirer.