Так себе идея изучать Java через Android. Android использует Java исключительно как фронт, синтаксис, понятный разработчику. Но JVM там своя. Принцип "написано однажды, запускается везде" из-за этого не соблюдается. Вы не можете запустить приложение, написанное с использованием Android SDK запустить где-либо еще, кроме Android OS. Java как язык довольно банален и скучен. Изучать Java просто как язык, тоже скучно. Нужно сразу врубаться в инфраструктуру. Какой-то одной книги наверное нет. На сайте Oracle довольно подробные есть туториалы по реализации того или иного функционала. На Вашем месте (а когда-то я там был) я бы взял уже готовые наработки (что-то же Вы реализовали на PHP, JS) и попробовал бы воспроизвести их на Java. Если это web - берите Spring Framework с его Spring MVC (благо туториалов по нему оооочень много), если хотите desktop - берите JavaFX (тут инфы не так много, но можно найти). И тут я пришел к тому, что Вы, возможно, хотите mobile ... Тогда да, берем Android и погнали ... Но основная мысль в том, что учить Java не сама цель, целью должно быть изучение инфраструктуры и инструментов для построения ПО на Java.