Конечно, для начала нужны какие-то знания Java. Я бы порекомендовал изучить Java, основные синтаксические конструкции, общие понятия ООП, а потом приступить к программированию для Android. Думаю, что если уже имеются навыки программирование, то изучение непосредственно Java много времени не займет. Программировать под Андроид рекомендовал бы с ознакомления с обучающими статьями на anddev.org, официальным мануалом (developer.android.com), а потом очень неплохой статьи на хабре —
Создание судоку