Я бы не назвал их подводными камнями как таковыми, но всегда не забывайте учитывать, что это не тот компьютер, который подключен к стене, которую можно просто модернизировать различными способами. У вас есть цикл обновления примерно каждые 2 года (продолжительность стандартного мобильного контракта в наши дни), и аппаратное обеспечение (А) не является самым быстрым и (Б) статичным в течение этого времени.
Что нужно учитывать:
1) Как вещи, которые ваше приложение влияет на время автономной работы? Вы разбрызгиваете яркую графику повсюду? Запуск много потоков в фоновом режиме? Услуги?
2) Сколько места должно занимать ваше приложение на устройстве? Является ли информация чем-то, что может храниться на сервере и передаваться на устройство для временного использования только тогда, когда это необходимо?
3) Относительно # 2, терпимо ли ваше приложение к плохим / несуществующим сетевым / мобильным соединениям? Как это работает в сети EDGE против 3G?
Я уверен, что вы можете придумать больше, но это то, что я имею в виду, когда пишу свои приложения.